Das Multimedia-Framework GStreamer 1.16.0 ist verfügbar

Nach über einem Jahr Entwicklungszeit fand statt freigeben GStreamer 1.16, ein plattformübergreifender Satz von in C geschriebenen Komponenten zur Erstellung einer breiten Palette von Multimedia-Anwendungen, von Mediaplayern und Audio-/Videodateikonvertern bis hin zu VoIP-Anwendungen und Streaming-Systemen. Der GStreamer-Code ist unter LGPLv2.1 lizenziert. Gleichzeitig sind Updates für die Plugins gst-plugins-base 1.16, gst-plugins-good 1.16, gst-plugins-bad 1.16, gst-plugins-ugly 1.16 sowie die Bindung gst-libav 1.16 und die verfügbar gst-rtsp-server 1.16 Streaming-Server. Auf API- und ABI-Ebene ist die neue Version abwärtskompatibel mit dem 1.0-Zweig. Binäre Builds folgen in Kürze wird vorbereitet für Android, iOS, macOS und Windows (unter Linux wird empfohlen, Pakete aus der Distribution zu verwenden).

Taste Verbesserungen GStreamer 1.16:

  • Der WebRTC-Stack bietet Unterstützung für P2P-Datenkanäle, die mithilfe des SCTP-Protokolls implementiert werden, sowie Unterstützung für BÜNDELN zum Senden verschiedener Arten von Multimediadaten innerhalb einer Verbindung und der Möglichkeit, mit mehreren TURN-Servern zu arbeiten (STUN-Erweiterung zur Umgehung von Adressübersetzern);
  • Unterstützung für den AV1-Videocodec in Matroska (MKV) und QuickTime/MP4-Containern hinzugefügt. Zusätzliche AV1-Einstellungen wurden implementiert und die Anzahl der vom Encoder unterstützten Eingabedatenformate wurde erweitert;
  • Unterstützung hinzugefügt Untertitelsowie die Möglichkeit, andere Arten integrierter Daten aus Videos zu identifizieren und zu extrahieren ANC (Zusätzliche Daten, zusätzliche Informationen wie Audio- und Metadaten, die über digitale Schnittstellen in den nicht angezeigten Teilen der Scanzeilen übertragen werden);
  • Unterstützung für uncodiertes (Roh-)Audio ohne abwechselnde Audiokanäle im Speicher hinzugefügt (Non-Interleaved, linke und rechte Audiokanäle werden in separaten Blöcken platziert, anstatt abwechselnde Kanäle in der Form „LINKS|RECHTS|LINKS|RECHTS|LINKS|RECHTS“) );
  • In den Basissatz der Plugins verschoben (gst-plugins-base) GstVideoAggregator (Kurs zum Mischen von Rohvideos), Komponist (ein verbesserter Ersatz für Videomixer) und OpenGL-Mixerelemente (glvideomixer, glmixerbin, glvideomixerelement, glstereomix, glmosaic), die zuvor im Satz „gst-plugins-bad“ platziert waren;
  • Neu hinzugefügt режим Halbbildwechsel, bei dem jeder Puffer als separates Halbbild in Interlaced-Video verarbeitet wird, wobei die oberen und unteren Halbbilder auf der Ebene der dem Puffer zugeordneten Flags getrennt werden;
  • Dem Matroska-Mediencontainer-Entpacker wurde Unterstützung für das WebM-Format und die Inhaltsverschlüsselung hinzugefügt.
  • Ein neues wpesrc-Element hinzugefügt, das als Engine-basierter Browser fungiert WebKit WPE (ermöglicht Ihnen, die Browserausgabe als Datenquelle zu behandeln);
  • Video4Linux bietet Unterstützung für HEVC-Kodierung und -Dekodierung, JPEG-Kodierung und verbesserten dmabuf-Import und -Export;
  • Dem Videodecoder wurde Unterstützung für die VP8/VP9-Dekodierung mithilfe einer hardwarebeschleunigten NVIDIA-GPU hinzugefügt, und dem Encoder wurde Unterstützung für die hardwarebeschleunigte H.265/HEVC-Kodierung hinzugefügt.
  • Am msdk-Plugin wurden zahlreiche Verbesserungen vorgenommen, die die Nutzung der Hardwarebeschleunigung für die Kodierung und Dekodierung auf Intel-Chips (basierend auf dem Intel Media SDK) ermöglichen. Dazu gehört zusätzliche Unterstützung für dmabuf-Import/Export, VP9-Dekodierung, 10-Bit-HEVC-Kodierung, Video-Nachbearbeitung und dynamische Auflösungsänderung;
  • Das ASS/SSA-Untertitel-Rendering-System bietet jetzt Unterstützung für die Verarbeitung mehrerer sich zeitlich überschneidender Untertitel und deren gleichzeitige Anzeige auf dem Bildschirm.
  • Für das Meson-Build-System wurde volle Unterstützung bereitgestellt, die jetzt für die Erstellung von GStreamer auf allen Plattformen empfohlen wird. Die Entfernung der Autotools-Unterstützung wird im nächsten Zweig erwartet;
  • Die Hauptstruktur von GStreamer umfasst Bindungen für die Entwicklung in der Rust-Sprache und ein Modul mit Plugins in Rust;
  • Es wurde eine Leistungsoptimierung durchgeführt.

Source: opennet.ru

Kommentar hinzufügen