Vuoden kehitystyön jälkeen julkaistiin GStreamer 1.22, monialustainen komponenttisarja, jolla luodaan laaja valikoima multimediasovelluksia mediasoittimista ja ääni-/videotiedostomuuntimista VoIP-sovelluksiin ja suoratoistojärjestelmiin. GStreamer-koodi on lisensoitu LGPLv2.1:llä. Erikseen kehitetään päivityksiä liitännäisiin gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, samoin kuin gst-libav-sidos ja gst-rtsp-server-suoratoistopalvelin. . API- ja ABI-tasolla uusi julkaisu on taaksepäin yhteensopiva 1.0-haaran kanssa. Binäärikokoonpanot valmistellaan pian Androidille, iOS:lle, macOS:lle ja Windowsille (Linuxissa suositellaan jakelun pakettien käyttöä).
Tärkeimmät parannukset GStreamer 1.22:ssa:
- Parannettu tuki AV1-videokoodausmuodolle. Lisätty mahdollisuus käyttää laitteistokiihdytystä AV1-koodaukseen ja dekoodaukseen VAAPI/VA-, AMF-, D3D11-, NVCODEC-, QSV- ja Intel MediaSDK -sovellusliittymien kautta. Lisätty uudet RTP-käsittelijät AV1:lle. Parannettu AV1:n jäsentäminen MP4-, Matroska- ja WebM-säiliöissä. Kokoonpanot sisältävät elementtejä, joissa on AV1-enkooderit ja -dekooderit, jotka perustuvat dav1d- ja rav1e-kirjastoihin.
- Toteutettu tuki Qt6: lle. Lisätty qml6glsink-elementti, joka käyttää Qt6:ta videon hahmontamiseen QML-kohtauksen sisällä.
- Lisätty gtk4paintablesink- ja gtkwaylandsink-elementit renderöimiseen GTK4:n ja Waylandin avulla.
- Mukautuvaan suoratoistoon on lisätty uusia asiakkaita, jotka tukevat HLS-, DASH- ja MSS-protokollia (Microsoft Smooth Streaming).
- Tarjoaa mahdollisuuden luoda irrotettuja kokoonpanoja, jotka on optimoitu koon pienentämiseksi.
- Lisätty tuki WebRTC-simulcastille ja Google Congestion Controlille.
- Saatavilla on yksinkertainen ja itsenäinen laajennus WebRTC:n kautta lähettämistä varten.
- Lisätty uusi MP4-mediasäiliöpakkaus, joka tukee pirstoutunutta ja pirstoutumatonta dataa.
- Lisätty uusia laajennuksia Amazon AWS -tallennus- ja äänen transkriptiopalveluihin.
- Päivitetyt sidokset Rust-kielelle. Lisätty 19 uutta lisäosaa, tehostetta ja elementtiä, jotka on kirjoitettu Rustissa (gst-plugins-rs). On huomattava, että 33% uuden GStreamerin muutoksista on toteutettu Rustissa (muutokset koskevat sidoksia ja laajennuksia), ja gst-plugins-rs-laajennussarja on yksi aktiivisemmin kehitetyistä GStreamer-moduuleista. Rustilla kirjoitettuja liitännäisiä voidaan käyttää minkä tahansa kielen ohjelmissa ja niiden kanssa työskentely on samanlaista kuin C- ja C++-laajennusten käyttäminen.
- Rust-laajennukset toimitetaan osana virallisia binaaripaketteja Windows- ja macOS-alustoille (kokoonpanoa ja toimitusta tuetaan Linuxissa, Windowsissa ja macOS:ssä).
- WebRTC-pohjainen Rust-kielellä kirjoitettu mediapalvelin on otettu käyttöön, joka tukee WHIP:tä (WebRTC HTTP ingest) ja WHEP:tä (WebRTC HTTP egress).
- Lisätty videocolorscale-elementti, joka yhdistää videon muuntamisen ja skaalausominaisuudet.
- Parannettu tuki korkean värisyvyyden videolle.
- Lisätty tuki kosketusnäytön tapahtumille Navigation API:lle.
- Lisätty H.264/H.265-aikaleiman korjauselementit PTS/DTS-rekonstruointia varten ennen materiaalisäiliöiden pakkaamista.
- Linux-alustalla DMA:n käyttöä on parannettu toimimaan yhdessä puskureiden kanssa, kun videota koodataan, dekoodataan, suodatetaan ja renderöidään laitteistokiihdytyksen avulla.
- Integraatiota CUDA:n kanssa on parannettu: gst-cuda-kirjasto ja cudaconvertscale-elementti on lisätty, integraatio D3D11- ja NVIDIA dGPU NVMM -elementtien kanssa on toimitettu.
- Integraatiota Direct3D11:n kanssa on parannettu: uusi gst-d3d11-kirjasto on lisätty, d3d11screencapture-, d3d11videosink-, d3d11convert- ja d3d11compositor-laajennusten ominaisuuksia on laajennettu.
- AMD-grafiikkasuorittimiin on otettu käyttöön uudet laitteistokiihdytetyt videoenkooderit H.264/AVC-, H.265/HEVC- ja AV1-muodoissa, jotka on rakennettu AMF (Advanced Media Framework) SDK:n avulla.
- Applemedia-laajennus on lisännyt tuen H.265/HEVC-videon koodaukselle ja dekoodaukselle.
- Lisätty tuki H.265/HEVC-videokoodaukselle androidmedia-laajennukseen.
- Force-live-ominaisuus on lisätty audiomixer-, kompositori-, glvideomixer- ja d3d11compositor-laajennuksiin, jotta live-tila voidaan ottaa käyttöön.
Lähde: opennet.ru