GStreamer 1.20.0 -multimediakehys on saatavilla

Puolentoista vuoden kehitystyön jälkeen julkaistiin GStreamer 1.20, C-kielellä kirjoitettu monikäyttöinen komponenttisarja, jolla voidaan luoda monenlaisia ​​multimediasovelluksia mediasoittimista ja ääni-/videotiedostomuuntimista VoIP-sovelluksiin ja suoratoistojärjestelmiin. GStreamer-koodi on lisensoitu LGPLv2.1:llä. Samanaikaisesti saatavilla on päivitykset laajennuksiin gst-plugins-base 1.20, gst-plugins-good 1.20, gst-plugins-bad 1.20, gst-plugins-ugly 1.20, sekä gst-libav 1.20 -sidos ja gst-rtsp-server 20 -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.20:ssa:

  • GitLabin kehitystyö on siirretty käyttämään yhtä kaikille moduuleille yhteistä arkistoa.
  • Uusi korkean tason GstPlay-kirjasto on lisätty, joka korvaa GstPlayer API:n ja tarjoaa samankaltaisia ​​toimintoja sisällön toistamiseen, erottuen käyttämällä viestiväylää sovellusten ilmoittamiseen GObject-signaalien sijaan.
  • Lisätty tuki WebM:n läpinäkyvyystietojen purkamiseen, mikä mahdollistaa VP8/VP9-videoiden toiston läpinäkyvillä alueilla.
  • Koodausprofiileissa on nyt tuki lisäsovelluskohtaisten ominaisuuksien asettamiseen.
  • Compositor tukee monisäikeistä videon muuntamista ja miksausta.
  • Depayloader- ja payloader-luokilla on yhtenäinen tuki muiden RTP-otsikoiden (RTP Header Extensions) työskentelylle.
  • Lisätty tuki SMPTE 2022-1 2-D (Forward Error Correction) -mekanismille.
  • Encodebin ja transcodebin VP8-, VP9- ja H.265-koodekkeille toteuttavat älykkään koodaustilan, jossa transkoodaus suoritetaan vain tarvittaessa ja muun ajan olemassa olevaa virtaa välitetään edelleen.
  • Souphttpsrc-laajennus on nyt yhteensopiva libsoup2:n ja libsoup3:n kanssa.
  • Lisätty kyky purkaa syötetietoa välikehysten (alikehysten) tasolla, jonka avulla voit aloittaa dekoodauksen odottamatta koko kehyksen vastaanottamista. Tämän optimoinnin tuki sisältyy OpenJPEG JPEG 2000-, FFmpeg H.264- ja OpenMAX H.264/H.265 -dekooderiin.
  • Kun dekoodataan videota RTP-, WebRTC- ja RTSP-protokollia varten, pakettihäviöiden, tietojen vioittumisen ja avainkehyspyyntöjen automaattinen käsittely tarjotaan.
  • Tuki koodekkitietojen muuttamiseen lennossa on lisätty mp4- ja Matroska-mediasäiliöpakkauksiin, mikä mahdollistaa H.264/H.265-tulovirtojen profiilin, tason ja resoluution muuttamisen.
  • Lisätty tila pirstoutuneiden mp4-mediasäiliöiden luomiseen.
  • Äänituki on lisätty WPE (WebKit Port for Embedded) -pohjaiseen porttiin.
  • Lisätty mahdollisuus käyttää CUDA:ta väriavaruuden muuntamiseen, elementtien skaalaukseen ja elementtien lataamiseen.
  • Lisätty tuki NVMM (NVIDIA Memory Module) -muistille OpenGL-glupload- ja gldownload-elementeille.
  • Parannettu WebRTC-tuki.
  • VA-API:lle (Video Acceleration API) on ehdotettu uutta laajennusta, joka tukee useampia dekoodeja ja jälkikäsittelyelementtejä.
  • AppSink API on lisännyt tapahtumien tuen puskurien ja puskuriluetteloiden lisäksi.
  • AppSrc:iin on lisätty lisäasetuksia sisäisille jonoille.
  • Päivitetty Rust-kielisidokset ja lisätty 26 uutta Rust-kielellä kirjoitettua laajennusta (gst-plugins-rs).
  • Lisätty aesdec- ja aesenc-elementit salaukseen ja salauksen purkamiseen AES-algoritmin avulla.
  • Lisätty fakeaudiosink- ja videocodectestsink-elementit testausta ja virheenkorjausta varten.
  • Parannetut työkalut minimalististen GStreamer-koontiversioiden luomiseen.
  • Lisätty kyky rakentaa FFmpeg 5.0:lla.
  • Linuxille on otettu käyttöön versiot MPEG-2- ja VP9-koodekeista, jotka toimivat ilman tallennustilaa (Stateles).
  • Windowsille AV3- ja MPEG-11-tuki on lisätty Direct1D2/DXVA-pohjaiseen dekooderiin.

Lähde: opennet.ru

Lisää kommentti