Po roku vývoja bol vydaný GStreamer 1.22, multiplatformový súbor komponentov na vytváranie širokého spektra multimediálnych aplikácií, od prehrávačov a konvertorov audio/vide súborov po VoIP aplikácie a systémy na streamovanie. Kód GStreamer je distribuovaný pod licenciou LGPLv2.1. Samostatne sú vyvíjané aktualizácie pluginov gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, ako aj obal gst-libav a server streamovania gst-rtsp-server. Na úrovni API a ABI je nové vydanie spätne kompatibilné s vetvou 1.0. Binarne 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 GStreamer 1.22:
- Vylepšená podpora formátu kódovania videa AV1. Pridaná možnosť používať hardvérové urýchlenie kódovania a dekódovania AV1 cez API VAAPI/VA, AMF, D3D11, NVCODEC, QSV a Intel MediaSDK. Pridané nové RTP spracovatele pre AV1. Vylepšená analýza AV1 v kontajneroch MP4, Matroska a WebM. Súčasťou zostáv sú prvky s kódovačmi a dekodérmi AV1 na základe knižníc dav1d a rav1e.
- Realizovaná podpora Qt6. Pridaný prvok qml6glsink, ktorý využíva Qt6 na vykresľovanie videa v rámci scény QML.
- Pridané prvky gtk4paintablesink a gtkwaylandsink na vykresľovanie pomocou GTK4 a Wayland.
- Pridané nové klienty pre adaptívne streamovanie, podporujúce protokoly HLS, DASH a MSS (Microsoft Smooth Streaming).
- Poskytla sa možnosť vytvárania zredukovaných zostáv optimalizovaných na zmenšenie veľkosti.
- Pridaná podpora WebRTC simulcast a Google Congestion Control.
- Poskytovaný jednoduchý a samostatný plugin na odosielanie cez WebRTC.
- Pridaný nový obal mediálnych kontajnerov MP4 s podporou fragmentovaných a nefragmentovaných dát.
- Pridané nové pluginy pre úložisko Amazon AWS a služby prepisovania 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 pozorované, že 33% z zmien v novom GStreamer je realizovaných na Ruste (zmeny sa týkajú väzieb a pluginov), a súbor pluginov gst-plugins-rs je jedným z najaktívnejšie vyvíjaných modulov GStreamer. Pluginy napísané v jazyku Rust môžu byť používané v programoch v akýchkoľvek jazykoch a práca s nimi je podobná používaniu pluginov v C a C++.
- Zabezpečené dodanie pluginov pre Rust v rámci oficiálnych binárnych balíčkov pre platformy Windows a macOS (podpora kompilácie a dodania je zabezpečená aj pre Linux, Windows a macOS).
- Implementovaný mediálny server napísaný v Rust na báze WebRTC, ktorý podporuje WHIP (WebRTC HTTP ingest) a WHEP (WebRTC HTTP egress).
- Pridaná vlastnosť videocolorscale, ktorá kombinuje možnosti na konverziu a škálovanie videa.
- Vylepšená podpora videa s vysokou hĺbkou farieb.
- V API Navigation bola pridaná podpora udalostí z dotykových obrazoviek.
- Pridané prvky korekcie časových značiek H.264/H.265 na rekonštrukciu PTS/DTS pred balením multimediálnych kontajnerov.
- Na platforme Linux bolo vylepšené používanie DMA pre spoluprácu s vyrovnávacími pamäťami pri kódovaní, dekódovaní, filtrovaní a vykresľovaní videa s použitím hardvérového akcelerátora.
- Vylepšená integrácia s CUDA: pridaná knižnica gst-cuda a prvok cudaconvertscale, zabezpečená integrácia s prvkami D3D11 a NVIDIA dGPU NVMM.
- Vylepšená integrácia s Direct3D11: pridaná nová knižnica gst-d3d11, rozšírené možnosti pluginov d3d11screencapture, d3d11videosink, d3d11convert a d3d11compositor.
- Pre GPU AMD boli implementované nové hardvérovo akcelerované video kódovače vo formátoch H.264 / AVC, H.265 / HEVC a AV1, vybudované s použitím SDK AMF (Advanced Media Framework).
- Do pluginu applemedia bola pridaná podpora kódovania a dekódovania videa H.265 / HEVC.
- Do pluginu androidmedia bola pridaná podpora kódovania videa H.265 / HEVC.
- Do pluginov audiomixer, compositor, glvideomixer a d3d11compositor bola pridaná vlastnosť force-live na nútené zapnutie režimu live.
Zdroj: opennet.ru
