Po roku vývoja bol vydaný GStreamer 1.22, multiplatformová sada komponentov na vytváranie širokej škály multimediálnych aplikácií, od prehrávačov médií a konvertorov audio/video súborov až po VoIP aplikácie a streamovacie systémy. Kód GStreamer je licencovaný pod LGPLv2.1. Samostatne sa vyvíjajú aktualizácie doplnkov gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, ako aj väzby gst-libav a streamovacieho servera gst-rtsp-server . Na úrovni API a ABI je nové vydanie spätne kompatibilné s vetvou 1.0. Binárne zostavy budú čoskoro pripravené pre Android, iOS, macOS a Windows (v Linuxe sa odporúča používať balíčky z distribúcie).
Kľúčové vylepšenia v GStreamer 1.22:
- Vylepšená podpora pre formát kódovania videa AV1. Pridaná možnosť použiť hardvérovú akceleráciu na kódovanie a dekódovanie AV1 prostredníctvom API VAAPI/VA, AMF, D3D11, NVCODEC, QSV a Intel MediaSDK. Pridané nové obslužné programy RTP pre AV1. Vylepšená analýza AV1 v kontajneroch MP4, Matroska a WebM. Zostavy zahŕňajú prvky s kódovačmi a dekodérmi AV1 založenými na knižniciach dav1d a rav1e.
- Implementovaná podpora pre Qt6. Pridaný prvok qml6glsink, ktorý používa Qt6 na vykreslenie videa v scéne QML.
- Pridané prvky gtk4paintablesink a gtkwaylandsink na vykresľovanie pomocou GTK4 a Wayland.
- Pribudli noví klienti pre adaptívne streamovanie, ktorí podporujú protokoly HLS, DASH a MSS (Microsoft Smooth Streaming).
- Poskytuje možnosť vytvárať orezané zostavy, ktoré sú optimalizované na zmenšenie veľkosti.
- Pridaná podpora pre WebRTC simulcast a Google Congestion Control.
- K dispozícii je jednoduchý a samostatný doplnok na odosielanie cez WebRTC.
- Pridaný nový balíkovač kontajnerov médií MP4 s podporou fragmentovaných a nefragmentovaných údajov.
- Pridané nové doplnky pre úložisko Amazon AWS a služby prepisu zvuku.
- Aktualizované väzby pre jazyk Rust. Pridaných 19 nových pluginov, efektov a prvkov napísaných v Ruste (gst-plugins-rs). Je potrebné poznamenať, že 33% zmien v novom GStreameri je implementovaných v Ruste (zmeny sa týkajú väzieb a doplnkov) a sada doplnkov gst-plugins-rs je jedným z najaktívnejšie vyvíjaných modulov GStreamer. Pluginy napísané v Ruste je možné použiť v programoch v akomkoľvek jazyku a práca s nimi je podobná ako pri používaní pluginov v C a C++.
- Zásuvné moduly Rust sú dodávané ako súčasť oficiálnych binárnych balíkov pre platformy Windows a macOS (zostavenie a doručenie sú podporované pre Linux, Windows a macOS).
- Bol implementovaný mediálny server založený na WebRTC napísaný v Ruste, ktorý podporuje WHIP (WebRTC HTTP ingest) a WHEP (WebRTC HTTP egress).
- Pridaný prvok videocolorscale, ktorý kombinuje možnosti konverzie videa a škálovania.
- Vylepšená podpora pre video s vysokou farebnou hĺbkou.
- Do navigačného rozhrania API bola pridaná podpora pre udalosti na dotykovej obrazovke.
- Pridané prvky korekcie časovej pečiatky H.264/H.265 pre rekonštrukciu PTS/DTS pred balením kontajnerov na médiá.
- Na platforme Linux sa zlepšilo používanie DMA, aby spolupracovalo s vyrovnávacími pamäťami pri kódovaní, dekódovaní, filtrovaní a vykresľovaní videa pomocou hardvérovej akcelerácie.
- Integrácia s CUDA bola vylepšená: bola pridaná knižnica gst-cuda a prvok cudaconvertscale, bola poskytnutá integrácia s prvkami D3D11 a NVIDIA dGPU NVMM.
- Integrácia s Direct3D11 bola vylepšená: bola pridaná nová knižnica gst-d3d11, boli rozšírené možnosti doplnkov d3d11screencapture, d3d11videosink, d3d11convert a d3d11compositor.
- Pre GPU AMD sú implementované nové hardvérovo akcelerované kódovače videa vo formátoch H.264 / AVC, H.265 / HEVC a AV1, zostavené pomocou SDK AMF (Advanced Media Framework).
- Doplnok applemedia pridal podporu pre kódovanie a dekódovanie videa H.265/HEVC.
- Do doplnku androidmedia bola pridaná podpora pre kódovanie videa H.265/HEVC.
- Vlastnosť force-live bola pridaná do zásuvných modulov audiomixer, compositor, glvideomixer a d3d11compositor, aby sa aktivoval živý režim.
Zdroj: opennet.ru