Даступны мультымедыйны фрэймворк GStreamer 1.22.0

Пасля года распрацоўкі адбыўся рэліз GStreamer 1.22, кросплатформавага набору кампанентаў для стварэння шырокага спектру мультымедыя прыкладанняў, ад медыяплэераў і канвертараў аўдыё/відэа файлаў, да VoIP-прыкладанняў і сістэм струменевага вяшчання. Код GStreamer распаўсюджваецца пад ліцэнзіяй LGPLv2.1. Асобна развіваюцца абнаўленні плагінаў gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, а таксама абвязка gst-libav і сервер струменевага вяшчання gst-rtsp-server. На ўзроўні API і ABI новы выпуск зваротна сумяшчальны з галінкай 1.0. Бінарныя зборкі ў хуткім часе будуць падрыхтаваны для Android, iOS, macOS і Windows (у Linux рэкамендуецца выкарыстоўваць пакеты з дыстрыбутыва).

Ключавыя паляпшэнні GStreamer 1.22:

  • Палепшана падтрымка фармату кадавання відэа AV1. Дададзена магчымасць выкарыстання апаратнага паскарэння кадавання і дэкадаванні AV1 праз API VAAPI/VA, AMF, D3D11, NVCODEC, QSV і Intel MediaSDK. Дададзены новыя RTP-апрацоўшчыкі для AV1. Палепшаны разбор AV1 у кантэйнерах MP4, Matroska і WebM. У склад зборак уключаны элементы з кадавальніка і дэкадавальнік AV1 на базе бібліятэк dav1d і rav1e.
  • Рэалізавана падтрымка Qt6. Дададзены элемент qml6glsink, які выкарыстоўвае Qt6 для адмалёўкі відэа ўнутры сцэны QML.
  • Дададзеныя элементы gtk4paintablesink і gtkwaylandsink для адмалёўкі з выкарыстаннем GTK4 і Wayland.
  • Дададзены новыя кліенты для адаптыўнага стрымінгу, якія падтрымліваюць пратаколы HLS, DASH і MSS (Microsoft Smooth Streaming).
  • Дадзена магчымасць стварэння ўрэзаных зборак, аптымізаваных для скарачэння памеру.
  • Дададзена падтрымка WebRTC simulcast і Google Congestion Control.
  • Прадастаўлены просты і самадастатковы убудова для адпраўкі праз WebRTC.
  • Дададзены новы пакавальнік медыякантэйнераў MP4 з падтрымкай фрагментаваных і не фрагментаваных дадзеных.
  • Дададзены новыя ўбудовы для сховішча Amazon AWS і сэрвісаў транскрыпцыі гуку.
  • Абноўлены прывязкі для мовы Rust. Дададзена 19 новых плагінаў, эфектаў і элементаў, напісаных на Rust (gst-plugins-rs). Адзначаецца, што 33% з змен у новым GStreamer рэалізаваны на Rust (змены датычацца прывязак і плагінаў), а набор плагінаў gst-plugins-rs з'яўляецца адным і найбольш актыўна развіваюцца модуляў GStreamer. Убудовы, напісаныя на мове Rust, могуць выкарыстоўвацца ў праграмах на любых мовах і праца з імі аналагічная выкарыстанню плагінаў на C і C++.
  • Забяспечана пастаўка плагінаў на Rust у складзе афіцыйных бінарных пакетаў для платформаў Windows і macOS (зборка і пастаўка падтрымліваецца для Linux, Windows і macOS).
  • Рэалізаваны напісаны на Rust медыясервер на базе WebRTC, які падтрымлівае WHIP (WebRTC HTTP ingest) і WHEP (WebRTC HTTP egress).
  • Дададзены элемент videocolorscale, які спалучае ў сабе магчымасці для канвертавання і маштабаванні відэа.
  • Палепшана падтрымка відэа з вялікай глыбінёй колеру.
  • У API Navigation дададзена падтрымка падзей ад сэнсарных экранаў.
  • Дададзеныя элементы карэкцыі часавых пазнак H.264/H.265 для рэканструкцыі PTS/DTS перад пакаваннем медыякантэйнераў.
  • На платформе Linux палепшана ўжыванне DMA для сумеснай працы з буферамі пры кадаванні, дэкадаванні, фільтраванні і адмалёўцы відэа з ужываннем апаратнага паскарэння.
  • Палепшана інтэграцыя з CUDA: дабаўлены бібліятэка gst-cuda і элемент cudaconvertscale, забяспечана інтэграцыя з элементамі D3D11 і NVIDIA dGPU NVMM.
  • Палепшана інтэграцыя з Direct3D11: дададзена новая бібліятэка gst-d3d11, пашыраны магчымасці плагінаў d3d11screencapture, d3d11videosink, d3d11convert і d3d11compositor.
  • Для GPU AMD рэалізаваны новыя апаратна паскораныя кадавальнікі відэа ў фарматах H.264 / AVC, H.265 / HEVC і AV1, пабудаваныя з выкарыстаннем SDK AMF (Advanced Media Framework).
  • У убудову applemedia дададзеная падтрымка кадавання і дэкадаванні відэа H.265 / HEVC.
  • У убудову androidmedia дададзена падтрымка кадавання відэа H.265 / HEVC.
  • У убудовы audiomixer, compositor, glvideomixer і d3d11compositor дададзена ўласцівасць force-live для прымусовага ўключэння live-рэжыму.

Крыніца: opennet.ru

Дадаць каментар