Egy évnyi fejlesztés után megjelent a GStreamer 1.22, amely egy többplatformos komponenskészlet a multimédiás alkalmazások széles skálájának létrehozásához, a médialejátszóktól és audio/video fájl konverterektől a VoIP alkalmazásokig és streaming rendszerekig. A GStreamer kód licence az LGPLv2.1. Külön fejlesztik a gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly bővítményeket, valamint a gst-libav összerendelést és a gst-rtsp-server streaming szervert. . API és ABI szinten az új kiadás visszafelé kompatibilis az 1.0 ággal. Hamarosan bináris összeállítások készülnek Androidra, iOS-re, macOS-re és Windowsra (Linuxban a disztribúcióból származó csomagok használata javasolt).
A GStreamer 1.22 legfontosabb fejlesztései:
- Továbbfejlesztett támogatás az AV1 videó kódolási formátumhoz. Hozzáadtuk a hardveres gyorsítás használatának lehetőségét az AV1 kódolásához és dekódolásához a VAAPI/VA, AMF, D3D11, NVCODEC, QSV és Intel MediaSDK API-kon keresztül. Új RTP-kezelők hozzáadva az AV1-hez. Az AV1 továbbfejlesztett elemzése MP4, Matroska és WebM tárolókban. Az összeállítások tartalmaznak elemeket AV1 kódolókkal és dekóderekkel, amelyek a dav1d és rav1e könyvtárakon alapulnak.
- Bevezetett támogatás a Qt6-hoz. Hozzáadott qml6glsink elem, amely a Qt6-ot használja a videó QML jeleneten belüli megjelenítésére.
- Hozzáadott gtk4paintablesink és gtkwaylandsink elemek a GTK4 és Wayland használatával történő megjelenítéshez.
- Az adaptív streaminghez új kliensek kerültek hozzáadásra, amelyek támogatják a HLS, DASH és MSS (Microsoft Smooth Streaming) protokollokat.
- Lehetővé teszi a méretcsökkentésre optimalizált lecsupaszított összeállítások létrehozását.
- A WebRTC szimulcast és a Google Congestion Control támogatása hozzáadva.
- Egy egyszerű és önálló bővítmény a WebRTC-n keresztüli küldéshez.
- Hozzáadott egy új MP4 médiatároló csomagolót, amely támogatja a töredezett és nem töredezett adatokat.
- Új beépülő modulok hozzáadva az Amazon AWS tárolási és audio-átírási szolgáltatásokhoz.
- Frissített kötések a Rust nyelvhez. 19 új beépülő modul, effektus és Rust nyelven írt elem (gst-plugins-rs) hozzáadva. Megjegyzendő, hogy az új GStreamer módosításainak 33%-a Rustban van végrehajtva (a változtatások kötésekre és bővítményekre vonatkoznak), és a gst-plugins-rs bővítménykészlet az egyik legaktívabban fejlesztett GStreamer modul. A Rust nyelven írt beépülő modulok bármilyen nyelvű programokban használhatók, és a velük való munka hasonló a C és C++ bővítményekhez.
- A Rust beépülő modulokat a hivatalos bináris csomagok részeként szállítjuk a Windows és a macOS platformokhoz (az összeállítás és szállítás támogatott Linux, Windows és macOS esetén).
- Egy Rust nyelven írt WebRTC-alapú médiaszerver került megvalósításra, amely támogatja a WHIP-et (WebRTC HTTP feldolgozás) és a WHEP-et (WebRTC HTTP kilépés).
- Hozzáadtuk a videocolorscale elemet, amely egyesíti a videokonverziót és a méretezési képességeket.
- Továbbfejlesztett támogatás a nagy színmélységű videókhoz.
- Az érintőképernyős események támogatása hozzáadva a Navigation API-hoz.
- H.264/H.265 időbélyeg korrekciós elemek hozzáadva a PTS/DTS rekonstrukcióhoz a médiatartályok csomagolása előtt.
- A Linux platformon a DMA használatát továbbfejlesztették, hogy együttműködjön a pufferekkel a videó kódolása, dekódolása, szűrése és hardveres gyorsítással történő megjelenítése során.
- Javult a CUDA-val való integráció: hozzáadásra került a gst-cuda könyvtár és a cudaconvertscale elem, valamint a D3D11 és az NVIDIA dGPU NVMM elemekkel való integráció biztosított.
- Javult a Direct3D11-gyel való integráció: új gst-d3d11 könyvtár került hozzáadásra, bővültek a d3d11screencapture, d3d11videosink, d3d11convert és d3d11compositor pluginok képességei.
- Az AMD GPU-khoz új, hardveres gyorsítású videókódolókat valósítottak meg H.264 / AVC, H.265 / HEVC és AV1 formátumban, amelyek az AMF (Advanced Media Framework) SDK segítségével épülnek fel.
- Az applemedia beépülő modul támogatja a H.265/HEVC videó kódolást és dekódolást.
- A H.265/HEVC videókódolás támogatása hozzáadva az androidmedia bővítményhez.
- A force-live tulajdonság hozzá lett adva az audiomixer, compositor, glvideomixer és d3d11compositor bővítményekhez, hogy az élő módot engedélyezni lehessen.
Forrás: opennet.ru