Framework-ul multimedia GStreamer 1.20.0 este disponibil

După un an și jumătate de dezvoltare, a fost lansat GStreamer 1.20, un set de componente multiplatformă scris în C pentru a crea o gamă largă de aplicații multimedia, de la playere și convertoare de fișiere audio/video, până la aplicații VoIP și sisteme de streaming. Codul GStreamer este distribuit sub licența LGPLv2.1. De asemenea, sunt disponibile actualizări pentru pluginurile gst-plugins-base 1.20, gst-plugins-good 1.20, gst-plugins-bad 1.20, gst-plugins-ugly 1.20, precum și wrapperul gst-libav 1.20 și serverul de streaming gst-rtsp-server 20. La nivelul API și ABI, noua versiune este compatibilă înapoi cu ramura 1.0. Pachetele binare vor fi pregătite în curând pentru Android, iOS, macOS și Windows (în Linux se recomandă utilizarea pachetelor din distribuție).

Îmbunătățiri cheie GStreamer 1.20:

  • Dezvoltarea pe GitLab a fost transformată pentru a utiliza un singur repository, comun pentru toate modulele.
  • A fost adăugată o nouă bibliotecă de nivel înalt GstPlay, care înlocuiește API-ul GstPlayer și oferă funcții similare pentru redarea conținutului, diferite prin faptul că utilizează un bus de mesaje pentru a notifica aplicațiile în loc de semnalele GObject.
  • A fost adăugată suport pentru decodarea informațiilor de transparență în format WebM, permițând redarea videoclipurilor VP8/VP9 cu zone transparente.
  • În profilele de codare a fost adăugat suport pentru configurarea proprietăților suplimentare, specifice aplicațiilor.
  • În Compositor a fost implementat suport pentru transformarea și amestecarea video în mod multithreading.
  • În clasele depayloader și payloader a fost unificată suportul pentru lucrul cu header-ele suplimentare RTP (RTP Header Extensions).
  • A fost adăugat suport pentru mecanismul de corecție anticipată a erorilor SMPTE 2022-1 2-D (Forward Error Correction).
  • În encodebin și transcodebin, pentru codec-urile VP8, VP9 și H.265, a fost implementat un mod inteligent de codare („smart encoding”), în care recodarea se realizează doar atunci când este necesar, iar în restul timpului se face trecerea fluxului existent.
  • A fost asigurată compatibilitatea plugin-ului souphttpsrc cu libsoup2 și libsoup3.
  • A fost adăugată capacitatea de a decodifica datele de intrare la nivelul cadrelor intermediare (sub-frame), permițând începerea decodării fără a aștepta primirea unui cadru complet. Suportul pentru această optimizare este folosit în decodoarele OpenJPEG JPEG 2000, FFmpeg H.264 și OpenMAX H.264/H.265.
  • În timpul decodării video pentru protocoalele RTP, WebRTC și RTSP, este asigurată o procesare automată a pierderii de pachete, a datelor corupte și a cererilor de cadre cheie.
  • În pachetele media mp4 și Matroska a fost adăugată suport pentru modificarea datelor codificatorului în timp real, permițând modificarea profilului, nivelului și rezoluției pentru fluxurile de intrare H.264/H.265.
  • A fost adăugat un mod de creare a containerelor media mp4 fragmentate.
  • În portul bazat pe WPE (WebKit Port for Embedded) a fost adăugat suport pentru sunet.
  • A fost adăugată posibilitatea de a utiliza CUDA pentru conversia spațiului de culori, scalarea elementelor și încărcarea acestora.
  • Pentru elementele OpenGL glupload și gldownload a fost adăugat suport pentru memoria NVMM (NVIDIA Memory Module).
  • Suportul pentru WebRTC a fost îmbunătățit.
  • A fost propus un nou plugin pentru VA-API (Video Acceleration API), care suportă mai mulți decodoare și elemente de post-procesare.
  • În API-ul AppSink a fost adăugată suport pentru evenimente, pe lângă buffere și liste de buffere.
  • În AppSrc au fost adăugate setări suplimentare pentru cozile interne.
  • Au fost actualizate legăturile în limbajul Rust și au fost adăugate 26 de noi pluginuri, scrise în Rust (gst-plugins-rs).
  • Au fost adăugate elementele aesdec și aesenc pentru criptarea și decriptarea folosind algoritmul AES.
  • Au fost adăugate elementele fakeaudiosink și videocodectestsink pentru testare și depanare.
  • Au fost îmbunătățite instrumentele pentru crearea de construcții minimalistice GStreamer.
  • A fost adăugată posibilitatea de a construi cu FFmpeg 5.0.
  • Pentru Linux au fost implementate variantele de codec MPEG-2 și VP9, funcționând fără păstrarea stării (Stateless).
  • Pentru Windows, în decodorul bazat pe Direct3D11/DXVA a fost adăugat suport pentru AV1 și MPEG-2.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster