GStreamer 1.26.5 führt wichtige Korrekturen für Audiokonvertierung, Overlays, V4L2, VA und Vulkan ein

  • Wichtige Fehlerbehebungen bei Audiokonvertierung, Overlays, V4L2, VA und Vulkan sowie Verbesserungen an wasapi2, Threadshare und rtpbin2
  • Neue praktische Unterstützung: JPEG XS in Videorate/ImageFreeze und zusätzliche Funktionen in STT/Cloud Services
  • Vollständiger Test der 1.26-Serie: VVC, JPEG XS, LCEVC, Untertitel, HLS/DASH, Analyse und Beschleunigung
  • PipeWire-Integration: Aktueller Status, Puffer-/Formatherausforderungen und Roadmap für Anwendungsfälle in der Praxis

GStreamer 1.26.5

GStreamer 1.26.5 jetzt verfügbar als Wartungsupdate innerhalb des stabilen Zweigs 1.26 mit starkem Fokus auf Stabilität, Regressionskorrekturen und praktischen Verbesserungen in Bereichen, mit denen Benutzer täglich konfrontiert werden. Es eine Bugfix-Version, die problemlos auf jeder 1.26.x installiert werden kann und die außerdem einige sehr nützliche kleine Ergänzungen enthält, von der Unterstützung für JPEG XS bei bestimmten Elementen bis hin zu Anpassungen an die Integration mit Windows, V4L2, Vulkan oder dem Gerätemonitor.

Diese Version baut auf dem enormen Fortschritt von 1.26.0 auf, der neue Technologien (H.266, LCEVC, JPEG XS), tiefgreifende Verbesserungen beim adaptiven Streaming, bei Untertiteln und beim Tracing, eine stärkere Integration mit Vulkan, OpenGL, CUDA, Direct3D12 und VA sowie eine Vielzahl neuer, in C und Rust geschriebener Elemente hinzufügte. In den folgenden Zeilen gehen wir im Detail auf alles ein, was 1.26.5 mit sich bringt, und erinnern uns an das Wichtigste der gesamten 1.26-Reihe. So haben Sie vor dem Update den vollen Überblick.

Was ist GStreamer 1.26.5 und warum es Sie interessieren sollte

Version 1.26.5 ist der fünfte Bugfix in der 1.26-Reihe., veröffentlicht am 7. August, konzentrierte sich auf Zuverlässigkeit. Hervorgehoben werden Fehlerbehebungen und Verbesserungen, die sich mit realen Problemen befassen, die in der Produktion festgestellt wurden: audioconvert behebt eine Cap-Negotiation-Regression mit Mischmatrizen, cea608overlay und cea708overlay akzeptieren jetzt GPU-Speicherpuffer, wenn der Downstream die Overlay-Komposition unterstützt, und d3d12screencapture optimiert sowohl die Quell- als auch die Geräteanbieter für ein robusteres Verhalten.

Im Reproduktions- und Entdeckungsteil wurden kritische Punkte verfeinert.: decodebin3 schlägt bei Streams mit ONVIF-Metadaten nicht mehr fehl, und uridecodebin3 riskiert keinen Absturz mehr beim Hinzufügen von URIs zu Nachrichten (z. B. wenn ein Decoder fehlt). V4L2 beseitigt einen Speicherverlust bei dynamischen Auflösungsänderungen und VA-Encoder erhalten Fixes für Grenzfälle.

Es gibt nützliche Codec-Ergänzungen: Videorate und Imagefreeze können jetzt mit JPEG XS, was Synchronisierungspipelines und die Frame-Generierung mit diesem Format erleichtert. Vulkan erhält Integrationsfix, wasapi2 verbessert die Geräteüberwachung unter Windows Threadshare und rtpbin2 enthalten zahlreiche Fixes y gst-device-monitor-1.0 gewinnt an Benutzerfreundlichkeit über die Kommandozeile. Darüber hinaus Bei Cloud-Diensten wird AWS Translate um Kürze erweitert. und eine Option für Partitionslautsprecher mit awtranscriber2zusammen mit einem Neue Eigenschaft „Masken-Schimpfwörter“ in Speechmatics um auf beleidigende Sprache in der Transkription einzugehen.

Erinnerung: Der große Sprung in 1.26.0 (Hauptfunktionen)

1.26.0 (11. März) brachte weitreichende Verbesserungen Informationen zur 1.x-API mit Schwerpunkt auf neuen Codecs, Untertiteln, Streaming, Analyse und Beschleunigung. Zu den Highlights gehören:

  • VVC H.266-Codec-Unterstützung: Parser, Basisdecoder für Hardware, VA-API-Dekodierung, Zugriff auf FFmpeg-Decoder und Mux/Demux in MP4, Matroska und MPEG-TS; in Rust wurde ein VVdeC-basierter Decoder hinzugefügt.
  • JPEG XS: SVT JPEG XS-basierte Kodierungs- und Dekodierungselemente mit Mux/Demux in MPEG-TS, unterstützt Interlaced und Progressive.
  • LCEVC: Kodierungs-/Dekodierungselemente auf V‑Nova SDK und Unterstützung in h264parse zum Extrahieren der Verbesserungsschicht mit lcevch264decodebin.
  • Untertitel und Untertitel für Hörgeschädigte: Extractors/Inserter für H.264/H.265, cea708overlay aus Rust, cea708mux, tttocea708, Verbesserungen in cccombinerund cdpserviceinject für CDP.
  • HLS/DASH: adaptivedemux2-Client mit Unterstützung für file://, Backoff und Wiederholungen, hlscmafsink y hlssink3 für CMAF/TS, hlsmultivariantinkund Vereinbarungen in Armaturenbrett.
  • splitmuxsrc/sink mit Lazy Loading und dynamische Fragmente, Add-Fragment-Signale und Open-File-Richtlinie.
  • MPEG‑TS leistungsfähiger
  • MP4/Matroska: VVC, Hap, Lagarith, Rohvideo, Rotations- und Flip-Tags, Trickmodus in qtdemux und Rohvideo-ISO-Unterstützung.
  • SMPTE 2038 in Rust für zusätzliche Metadaten (Demux/Mux und CC-Konvertierung).
  • Analysen: Neu GstTensorMeta, N zu N Beziehungen, Segmentierungsmasken, onvifmetadataextractor, Originalpuffer y Beziehungsmeta, sowie ausgefeiltere Python-Bindungen.
  • Beschleunigung und Grafik: große Verbesserungen in Vulkan y OpenGL (v210, YUY2/UYVY, Y444_10/16, DMABuf-Import), QML mit direktem DMABuf-Import, CUDA mit Composer, nvenc AV1, Jetson NVMM und vorkompilierten Kerneln, Direct3D12 mit d3d12videosink, d3d12swapchainsink, d3d12deinterlace, Zero-Copy-GPU-IPC und korrekte HDR-Aufnahme.
  • Capture-Karten: : Verbesserungen in AJA und Decklink (HDR PQ/HLG und Frameplanung).
  • RTP / RTSP: rtspsrc mit vom Client verwalteten MIKEY-Schlüsseln, neue Synchronisierungsmodi in rtpbin, RFC7273 Stateful Jitterbuffer, Verbesserungen an rtph265depay und Neugenerierung von Zeitstempeln in rtppassthroughpayund neue rtpbin2 in Rust.
  • WebRTC: webrtcbin mit grundlegenden Rollbacks und Verbesserungen; webrtcsink/src mit mehr Encodern, MSE und NTP/PTP-Synchronisierung; WHEP/WHIP bereits im Ökosystem vorhanden; und LiveKit/Kinesis-Elemente, die in Versionen nach 1.26.x verfügbar sind.
  • Neue Elemente als webview2src, CC-Extraktoren für H.264/H.265, h266parse, svtjpegxsenc/dec und mehrere Teile in VA und Rust.

Feine technische Änderungen, die einen Unterschied machen

Container und Transport

Robuste VVC-Unterstützung wurde zu MP4 und Matroska hinzugefügt, Nischenformate wie Hap/Lagarith und Rohvideo, zusätzlich zur korrekten Handhabung von Drehungen und Spiegelungen pro Medium und pro Spur. MPEG‑TS kann jetzt VVC, JPEG‑XS, VP9 und AV1 (mit benutzerdefinierten Zuordnungen) muxen und demuxen, Meter ID3 y SMPTE 302Mund versuchen Sie 2-Byte M192TS. Für Live-Streams, mpegtslivesrc bietet eine PCR-basierte Uhr.

Beim adaptiven Streaming la Client adaptivedemux2 verhindert fälschliche Live-Flushes, unterstützt file://-URIs und Wiederholungsversuche mit Backoff und Armaturenbrett legt Periodenlängen für dynamische MPDs fest. HLS erhält neue Senken mit Fokus auf CMAF und Skalierungsvarianten.

Untertitel, CC und SMPTE 2038

H.264/H.265-Extraktoren/Inserter manipulieren CC in der Präsentationsreihenfolge ohne Dekodierung (nützlich für die Verarbeitung von Pipelines ohne Neucodierung), und die Rust-Familie enthält st2038ancdemux/mux und DC-Wandler. cea708overlay ersetzt cc708overlay durch moderne Unterstützung und GPU-Pufferakzeptanz in 1.26.5.

Analysen und Metadaten

GstTensorMeta und neue N‑zu‑N-Beziehungen Erleichtern Sie komplexe Computer Vision-Workflows mit Masken, ONVIF-Konvertierungen und Dienstprogramm-Plugins zum Beibehalten der Originalpuffer. Verbesserte Python-Bindungen Optimieren Sie die Iteration und Bearbeitung analytischer Ziele.

Beschleunigung: Vulkan, OpenGL, CUDA und D3D12

Vulkan verbessert inkohärentes Gedächtnis, Kolorimetrie und Pools, zusätzlich zu H.264/H.265-Profilen und einem agileren Encoder. OpenGL erweitert Konvertierungen (v210, YUY2/UYVY, hohe Tiefe Y444) und DMABuf. CUDA Composer, nvav1enc, Jetson NVMM-Unterstützung hinzufügen und vorkompiliert. Direct3D12 öffnet öffentliche Bibliothek, sinkt mit Farbbalance, Mipmap-Texturen, Zero-Copy-IPC und portables Deinterlacing.

RTP, RTSP und WebRTC

RTSP verwaltet MIKEY auf der Clientseite (nützlich bei Axis-Kameras), rtpbin erhält Never/NTP-Modi und Jitterbuffer legt den RFC7273-Status offen. Verbesserte Keyframe-Anforderung in H.265 RTP und Neugenerierung von Zeitstempeln auf dem Gateway. Rest bietet rtpbin2 und Payloader für AC3, AMR, JPEG, KLV, MPEG-TS, MP4A/G, Opus, PCMU/A, VP8/9. Auf WebRTC Rollbacks, Audiopegel und erneute Übertragungen werden feinabgestimmt und Janus-, LiveKit- und WHEP-Quellen wurden in 1.26.x hinzugefügt.

API, Leistung und Traces

GstIdStr ersetzt GQuark in Strukturen/Caps um Lecks zu verhindern und die Leistung durch den Vergleich kurzer Ketten zu verbessern; GstVecDeque Geben Sie den Kern für einfachere und effizientere Warteschlangen ein. Audio-/Video-Dienstprogramme werden erweitert (Neuordnungen, schnelle Pfade v210⇄I420_10/I422_10) und neue Tracer werden hinzugefügt (Speicher, Push-Zeiten und PCAP). Das Protokollierungssystem fügt umfangreiche Details hinzu zu Nachrichten (URI, Stream-ID) und das Schreiben von DOTs ist optimiert.

GStreamer 1.26.4
Verwandte Artikel:
GStreamer 1.26.4 verbessert die Unterstützung für mp4mux, LiveKit und Geräte mit neuen Funktionen