Le cadre multimédia GStreamer 1.20.0 est maintenant disponible.

Après un an et demi de développement, la version 1.20 de GStreamer a été publiée. GStreamer est un ensemble de composants multiplateforme écrit en C, permettant de créer une large gamme d'applications multimédia, allant des lecteurs multimédia et des convertisseurs de fichiers audio/vidéo aux applications VoIP et aux systèmes de diffusion en continu. Le code de GStreamer est distribué sous la licence LGPLv2.1. Des mises à jour pour les plugins gst-plugins-base 1.20, gst-plugins-good 1.20, gst-plugins-bad 1.20, gst-plugins-ugly 1.20, ainsi que le wrapper gst-libav 1.20 et le serveur de diffusion gst-rtsp-server 20 sont également disponibles. Au niveau de l'API et de l'ABI, cette nouvelle version est rétrocompatible avec la branche 1.0. Des compilations binaires seront bientôt disponibles pour Android, iOS, macOS et Windows (il est recommandé d'utiliser les paquets fournis par la distribution sur Linux).

Améliorations clés de GStreamer 1.20 :

  • Le développement sur GitLab a été transféré vers l'utilisation d'un seul dépôt commun à tous les modules.
  • Une nouvelle bibliothèque de haut niveau, GstPlay, a été ajoutée. Elle remplace l'API GstPlayer et offre des fonctionnalités de lecture similaires, mais utilise un bus de messages pour notifier les applications au lieu des signaux GObject.
  • La prise en charge du décodage des informations de transparence dans le format WebM a été ajoutée, permettant de lire des vidéos VP8/VP9 avec des zones transparentes.
  • Le profil de codage prend en charge la configuration de propriétés supplémentaires spécifiques aux applications.
  • Le Compositor prend en charge la transformation et le mélange vidéo en mode multithread.
  • Le support pour les en-têtes RTP (RTP Header Extensions) a été unifié dans les classes depayloader et payloader.
  • Le mécanisme de correction d'erreurs prédictive SMPTE 2022-1 2-D (Forward Error Correction) a été ajouté.
  • Dans encodebin et transcodebin, un mode de codage intelligent ('smart encoding') a été mis en place pour les codecs VP8, VP9 et H.265, où la retranscodage se produit uniquement si nécessaire, le reste du temps, le flux existant est transmis.
  • La compatibilité du plugin souphttpsrc avec libsoup2 et libsoup3 a été assurée.
  • La capacité de décoder les données d'entrée au niveau des images intermédiaires (sub-frame) a été ajoutée, permettant de commencer le décodage sans attendre l'intégralité de la trame. Cette optimisation est utilisée dans les décodeurs OpenJPEG JPEG 2000, FFmpeg H.264 et OpenMAX H.264/H.265.
  • Lors du décodage vidéo pour les protocoles RTP, WebRTC et RTSP, un traitement automatique des pertes de paquets, des dommages aux données et des demandes de trames clés a été assuré.
  • Les empaqueteurs de conteneurs multimédias mp4 et Matroska ont ajouté la prise en charge du changement dynamique des données de codec, permettant de modifier le profil, le niveau et la résolution pour les flux entrants H.264/H.265.
  • Un mode de création de conteneurs multimédias mp4 fragmentés a été ajouté.
  • Le port basé sur WPE (WebKit Port for Embedded) a ajouté la prise en charge de l'audio.
  • La possibilité d'utiliser CUDA pour la conversion d'espace colorimétrique, le redimensionnement d'éléments et le chargement d'éléments a été ajoutée.
  • Pour les éléments OpenGL glupload et gldownload, le support de la mémoire NVMM (NVIDIA Memory Module) a été ajouté.
  • Le support de WebRTC a été amélioré.
  • Un nouveau plugin pour VA-API (Video Acceleration API) a été proposé, prenant en charge plus de décodeurs et d'éléments de post-traitement.
  • Dans l'API AppSink, la prise en charge des événements a été ajoutée en plus des tampons et des listes de tampons.
  • Des réglages supplémentaires pour les files d'attente internes ont été ajoutés à AppSrc.
  • Les liaisons en langage Rust ont été mises à jour et 26 nouveaux plugins écrits en Rust (gst-plugins-rs) ont été ajoutés.
  • Les éléments aesdec et aesenc pour le chiffrement et le déchiffrement utilisant l'algorithme AES ont été ajoutés.
  • Les éléments fakeaudiosink et videocodectestsink pour les tests et le débogage ont été ajoutés.
  • Des outils pour créer des compilations minimalistes de GStreamer ont été améliorés.
  • La possibilité de compilation avec FFmpeg 5.0 a été ajoutée.
  • Pour Linux, des variantes de codecs MPEG-2 et VP9, fonctionnant sans état (Stateless), ont été mises en œuvre.
  • Pour Windows, le décodeur basé sur Direct3D11/DXVA a ajouté le support de AV1 et MPEG-2.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster