GStreamer 1.26.7: Alle neuen Funktionen und wichtigen Fehlerbehebungen

  • Wartungsversion mit gezielten Fehlerbehebungen und ohne API/ABI-Änderungen.
  • Verbesserungen bei RTP/RTSP, Containern (TS/Matroska/FLV) und GPU (CUDA/D3D12).
  • Leistungs- und Latenzoptimierungen für Threadshare und Videorate.
  • Binärdateien für Android, iOS, macOS und Windows in Kürze verfügbar.

gstreamer 1.26.7

Die Ankunft GStreamer 1.26.7 Die Version wirkt rundum ausgefeilt: Der Fokus liegt auf der Behebung von Fehlern, der Optimierung von Funktionen und der Verbesserung der Stabilität des plattformübergreifenden Multimedia-Frameworks. Obwohl keine bahnbrechenden Änderungen vorgenommen wurden, bietet sie eine Reihe bemerkenswerter Verbesserungen, die zusammen die Zuverlässigkeit in realen Audio- und Video-Szenarien erhöhen. In dieser Version wurde viel Wert auf Schlüsselelemente wie RTP/RTSP, Container, GPUs, CEA-608-Untertitel, Timing und Entwicklungstools gelegt. Für diejenigen, die bereits die 1.26.x-Serie verwenden, ist dies ein sicherer Sprung. und sie wollen weniger Produktionsrückschläge.

Das Team betont, dass dies ein empfohlenes Update für alle Benutzer des stabiler Zweig, darunter Anwendungen, die mit Echtzeit-Streams, Demultiplexing gängiger Formate und Pipelines arbeiten, die von NVIDIA-GPUs oder Direct3D 12 unterstützt werden. Darüber hinaus gibt es noch einen praktischen Hinweis: Binärdateien für Android, iOS, macOS und Windows werden in Kürze verfügbar sein., wodurch plattformübergreifende Teams problemlos zwischen Umgebungen wechseln können.

GStreamer 1.26.7 Release-Übersicht

GStreamer 1.26.7 konzentriert sich auf Fehlerbehebungen, Latenzoptimierung und Kompatibilitätsverbesserungen. Eine Reihe von Fehlerbehebungen betrifft sowohl spezifische Plugins als auch plattformübergreifende Komponenten. Zu den Highlights zählen ein verbessertes CEA-608-Overlay, Unterstützung der CUDA 13.0-Toolchain, D3D12-Fixes, neue Payloader/Depayloader für lineares Audio in RTP, Demuxing- und Muxing-Optimierungen sowie Verbesserungen der Thread-Sharing-Mechanismen. Das Ziel besteht darin, die Robustheit zu erhöhen, ohne APIs oder erwartete Verhaltensweisen zu ändern. auf dem stabilen Zweig 1.26.

  • Untertitel und Overlays: Bessere Verwaltung des Nicht-Systemspeichers in cea608overlay.
  • GPU: Kernelkompilierung zur Laufzeitunterstützung für CUDA 13.0 und D3D12-Korrekturen beim Zuschneiden und Deinterlacing.
  • Demux und Container: Verbesserungen in qtdemux (Surround-Kanäle und Leistung mit GoPro), Korrekturen in mpegtsmux/tsdemux für Opus und Korrekturen beim Bestimmen von Pads am Ende des Streams auf mehreren Multiplexern.
  • Echtzeit-Netzwerk: Neue Payloader/Depayloader für lineares Audio (L8, L16, L24), RTSP-Keepalives in TCP-/Interleaved-Modi und mehrere Fixes in rtp/rtpbasepay2/rtpamrpay2.
  • Leistung und Latenz: Verbesserungen in Threadfreigabe, Videorate und Zeitstempelverwaltung.
  • Entwicklung und Build: Überarbeitete Gobject-Introspection-Anmerkungen und Aktualisierung von Meson auf 1.9.0 auf Cerbero für Xcode 26-Kompatibilität. Mehr Stabilität und weniger Speicherlecks.

Details zu Korrekturen und Verbesserungen in GStreamer 1.26.7

Untertitel und Overlay CEA-608

Das Stück cea608overlay erhält eine deutliche Verbesserung: Puffer aus Nicht-Systemspeichern werden nun besser verarbeitet, was bei der Integration von Beschleunigern oder externen Quellen häufig vorkommt. Dies reduziert subtile Fehler beim Mischen von Untertiteln mit Video in komplexen Pipelines. Das Ergebnis ist eine vorhersehbarere und robustere Überlagerung. wenn die Datenquelle kein herkömmlicher RAM ist.

GPU: CUDA und Direct3D 12

Auf der NVIDIA-Seite behebt GStreamer 1.26.7 die Laufzeitkompilierung von Kerneln mit CUDA 13.0. Diese Änderung ist entscheidend für diejenigen, die Kernel dynamisch generieren oder Filter verketten, die von Laufzeitkompilierung. Vermeidet Abstürze und Ausfälle in Umgebungen, die bereits auf die neueste CUDA-Toolchain umgestiegen sind.

Für Windows bietet das D3D12-Backend zwei Verbesserungen: Unterstützung für Crop-Metadaten im Konverter und Passthrough-Management im Deinterlacer. In der Praxis führt dies zu einem respektierten Cropping in der gesamten Kette und einem Deinterlacing, das nicht stört, wenn es nicht sollte, wodurch unnötige Verarbeitungskosten vermieden werden. Verbesserte visuelle Konsistenz und Leistung in Direct3D 12-Pipelines.

Quellen und Synchronisierung: fallbacksrc und inter

Fallbacksrc beinhaltet Verbesserungen im Quellenmanagement und gibt das Signal aus no-more-pads Für Eltern, die mit Flows nicht vertraut sind, erleichtert die Orchestrierung von Pipelines, die je nach Verfügbarkeit zwischen Quellen wechseln. Dies vereinfacht Designs mit alternativen Eingaben. Weniger „Klebecode“ und zuverlässigere Quellcodeänderungen.

Das Element inter fügt Eigenschaften zur Feinabstimmung der internen Unterkomponenten hinzu. Entwickler, die die Kommunikation zwischen Elementen durch Intra-Pipeline-Links maximieren, können durch diese zusätzliche Granularität das Verhalten ohne Hacks optimieren. Feinkörnigere Kontrolle über Timing und Pufferung in fortgeschrittenen Topologien.

Demultiplexing und Container

In der Welt von MPEG-TS mpegtsmux y tsdemux Sie korrigieren Aspekte im Zusammenhang mit Opus-Audio, was zwar nicht der klassischste TS-Codec ist, aber die Leistung in modernen Streams verbessert. Dies reduziert Artefakte, Desynchronisationen und instabile Stream-Interpretationen. Verbesserte Opus-Interoperabilität innerhalb von TS.

Mehrere Muxer, wie z. B. matroskamux, tsmux, flvmux y cea608mux, sie korrigieren die Auswahl des besten Pads, wenn ein Problem auftritt EOS (Ende des Streams). Diese Art der Korrektur ist entscheidend für saubere Datei- oder Stream-Abschlüsse und vermeidet inkonsistente Header oder unvollständige Trailer. Sauberere Flussabschlüsse und korrekte endgültige Dateien.

RTP/RTSP: Lineares Audio, Keepalives und Timing

Der RTP-Stack enthält Payloader und Depayloader für lineares Audio L8, L16 und L24. Diese Formate sind in professionellen Umgebungen, in denen Latenz und Wiedergabetreue wichtig sind, sehr verbreitet. Diese Formate erweitern die direkte Kompatibilität, ohne dass zwischenzeitliche Transformationen erforderlich sind. Mehr Flexibilität für unkomprimiertes Audio-Streaming.

rtspsrc Sendet jetzt Keepalives im TCP/Interleaved-Modus und minimiert so Verbindungsabbrüche aufgrund von Timeouts, wenn Proxys, Firewalls oder Netzwerke inaktive Verbindungen unterbrechen. In Überwachungs- oder Remote-Contribution-Umgebungen ist diese Maßnahme praktisch unerlässlich. Stabilere RTSP-Sitzungen in realen Netzwerken.

En rtpamrpay2 Aspekte im Zusammenhang mit dem Rahmengütezeichen werden korrigiert und in rtpbasepay2 Der letzte PTS wird nach Möglichkeit wiederverwendet. Dies ist ein praktischer Workaround, um gemeldete Probleme mit dem NVIDIA Jetson AV1-Encoder zu umgehen. Dies mag wie ein kleines Detail erscheinen, wirkt sich jedoch direkt auf die zeitliche Kontinuität des Streams aus. Weniger Jitter und konsistentere Zeitstempel.

Timing und Framerate

Das Element Videorate Eine Assertion wurde behoben, die bei Streams mit variabler Bildrate bei unbekannter Pufferdauer ausgelöst werden konnte. Diese Bedingungen, die bei „uneinheitlichen“ Kameras und Quellen auftreten, werden nun besser behandelt. Größere Toleranz für variable Bildraten ohne Absturz.

Leistung: Threadshare und Latenz

Das Subsystem Threadfreigabe Es wurden mehrere Verbesserungen hinsichtlich Latenz und Stabilität vorgenommen. Die gemeinsame Nutzung von Threads zwischen Elementen reduziert den Overhead, erfordert aber eine Feinabstimmung der Balance, um Engpässe zu vermeiden. Die Änderungen umfassten eine Feinabstimmung dieser Balance, wobei sich die Vorteile insbesondere bei komplexen Pipelines mit geringer Latenz bemerkbar machen. Weniger Overhead und schnellere Echtzeitreaktion.

Interoperabilität und große Puffer: unixfd

Unterstützung unixfd Behandelt jetzt Puffer mit großen Nutzlasten. Diese Unterstützung ist wertvoll, wenn Prozesse über Dateideskriptoren verbunden werden, was in Multiprozessarchitekturen oder bei der Frame-Übergabe zwischen spezialisierten Komponenten üblich ist. Große Datenmobilität ohne Unterbrechungen.

Bearbeitungs- und Anmerkungsdienste

In den Bearbeitungsdiensten wurde Folgendes durchgeführt: GESTimeline respektieren Sie die Entscheidung, das Signal zu verwerfen SELECT_ELEMENT_TRACK, wobei Pfade korrigiert wurden, die unerwartetes Verhalten und Speicherlecks verursachten. Diese Optimierung ermöglicht eine vorhersehbarere nichtlineare Bearbeitung und vermeidet „Geisterbilder“ von freigegebenen Elementen. Ein konformerer, leckagefreier Zeitplan.

Darüber hinaus werden Noten poliert. Gobjekt-Selbstbeobachtung, die die Grundlage für die Generierung von Bindungen für mehrere Sprachen bilden. Mit präziseren Anmerkungen sind Bindungen genauer, was Überraschungen bei der Entwicklung in Python, JavaScript oder anderen Sprachen reduziert. Zuverlässigere Bindungen dank besser beschriebener Introspektion.

Konstruktion und Toolchain: Cerberus und Meson

Das Cerbero-Build-System aktualisiert Meson auf 1.9.0 und ermöglicht so die Kompatibilität mit Xcode 26. Dies ist der Schlüssel zum Erstellen von SDKs und Binärdateien für das Ökosystem, sodass durch die Aktualisierung moderne Builds auf macOS freigeschaltet werden. Aktuelle Build-Umgebungen, weniger Reibung bei CI/CD.

GStreamer 1.26.7-Update und Binärdateien verfügbar

Das Team kündigt an, dass Binärdateien für Android, iOS, macOS und Windows „bald“ verfügbar sein werden, was Cross-Tests und Bereitstellungen vereinfacht. Da es keine API/ABI-Änderungen gibt und Version 1.x stabil ist, eignet sich das Update auch für konservative Release-Zyklen. Der Anstieg auf 1.26.7 ist im Wesentlichen ein Handel mit geringem Risiko.

Wenn Sie sensible Pipelines betreiben (z. B. mit NVIDIA Jetson-Hardware oder IP-Kameras über RTSP), empfiehlt sich eine direkte Validierung, insbesondere bei Zeitänderungen (PTS-Wiederverwendung) und Keepalives. Das explizite Ziel dieser Version war jedoch die Beseitigung von Fehlern, ohne das vertraglich vereinbarte Verhalten zu ändern. Nach einer QA-Runde können Sie mit Zuversicht testen und bereitstellen.

Bewährte Verfahren und rechtliche Hinweise

Beachten Sie beim Verteilen von Binärdateien oder Dokumentation die üblichen markenrechtlichen Aspekte: Wie in den verwendeten Quellen angegeben, sind der Name und das Logo von Arch Linux anerkannte Marken, und die Verwendung der Marke Linux® unterliegt einer Unterlizenz von LMI, dem exklusiven Lizenznehmer von Linus Torvalds. Für GStreamer erleichtern die LGPL-Lizenz und die API/ABI-Stabilität der 1.x-Serie den Einsatz in kommerziellen und kostenlosen Produkten. Durch die Einhaltung von Lizenzen und Markenrechten lassen sich spätere Probleme vermeiden..

Nach der Überprüfung von GStreamer 1.26.7 ist eines klar: Es handelt sich um einen umfassenden Wartungsstopp, der kritische Komponenten betrifft, ohne jemanden aus der Bahn zu werfen. Der Schwerpunkt liegt dabei auf Netzwerkstabilität, Containern und GPU-Beschleunigung. Für die meisten Projekte, die auf 1.26 basieren, führt der Umstieg zu weniger Fehlern, konsistenteren Pipelines und einer besser vorbereiteten Grundlage für alles, was danach kommt – und das alles mit der Sicherheit eines stabilen Zweigs, der APIs/ABIs respektiert und sein Ökosystem aus Tools und Kompilierung weiterhin pflegt. Eine Version, die heute besser funktioniert und morgen noch weiter geht..

Streamer 1.26.6
Verwandte Artikel:
GStreamer 1.26.6 kommt mit Leistungsverbesserungen, neuen Codecs und mehreren Fixes