После почти года разработки представлен релиз GStreamer 1.28, кроссплатформенного набора компонентов для создания широкого спектра мультимедиа приложений, от медиаплееров и конвертеров аудио/видео файлов, до 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.28 的主要改進:
- 為了支援 AMD 的異質運算 API,我們新增了一個 HIP(異構運算可移植性介面)外掛程式。該 API 除了使用 CPU 之外,還利用了 GPU 的平行運算能力。 HIP 簡化了在單一程式碼庫中實現跨 GPU 支援的過程(在 AMD GPU 上執行時使用 ROCm 協定棧,在 NVIDIA GPU 上執行時使用 CUDA 轉換層)。該插件提供了一些使用 HIP 實現的元件,用於視訊混合、色彩空間轉換、視訊縮放以及系統記憶體和顯存之間的資料交換等操作。此外,我們還開發了一個庫,用於將 HIP 支援整合到應用程式中。
- 新增了對 LCEVC(低複雜度增強視訊編碼)視訊編碼標準的支持,該標準在標準的 H.265 和 H.266 編解碼器之上增加了一個元資料層,以提升視訊品質。 LCEVC 編碼器和解碼器是基於 V-Nova SDK 中的庫。
- 新增對 Vulkan 圖形 API 功能的支持,可加速 AV1 和 VP9 視訊解碼以及 H.264 視訊編碼。基於 Vulkan 的 H.265 視訊解碼器現在支援每個頻道 10 位元顏色深度。
- 為使用 GTK4 和 Wayland 進行渲染而設計的 gtkwaylandsink 元素擴展了其顏色功能,例如增加了對解析和設定 HDR10 元資料的支援。
- 新增了一個用於分離音訊來源(例如,將人聲與背景音樂分離)的元素,該元素基於 charon-audio 函式庫,並使用 Rust 實作了 Demucs 方法。此外,還包含一個用 Rust 編寫的 Deepgram 語音辨識插件。
- 分析和目標識別功能已擴展。新增了用於組合和分離分析資料的元素。實現了張量解碼器分類器、人臉偵測器、YOLOv8 目標偵測器,以及用於 YOLOX 目標辨識模型的執行元素和解碼器。此外,還新增了用於自動連接解碼器的 tensordecodebin 元素,以及用於使用 LiteRT(TensorFlow Lite 的替代方案)執行 AI 模型的元素。
- 新增了一個用於解碼 GIF 圖像的元素,該元素以 Rust 編寫,並支援循環動畫。
- 輸入選擇器元件實現了在輸入流(接收器)之間切換的兩階段機制,消除了切換時出現競爭條件的情況。
- webrtcsink 元素已更新,支援使用 VA-API 進行硬體加速編碼,並具備重新協商連線的能力。
- 增加了用於合併和提取 ST-2038 廣播標準格式串流的元素。
- 為 fallbacksrc 元素添加了對編碼流的支援。
- 用於 RTMP 廣播的 FLV 媒體容器改進了對 H.265 視訊的支持,並增加了對多聲道音訊的支援。
- glupload 元素已更新,支援基於 udmabuf 的上傳器,允許軟體解碼器/來源與 GPU、顯示引擎(wayland)和其他裝置之間共用緩衝區。
- 新增了用於使用 Qt6 QML 進行渲染的 qml6 元素。
- 影片庫現在包含裁剪、縮放、旋轉和平移操作。
- 新增 GstContext 對象,允許在執行元素時使用共享線程池,以提高合成和視訊轉換等操作的效能。
- 新增了 icecastsink 元素,用於接收來自 IceCast 的串流,支援 AAC 格式,並以 Rust 編寫。
- 新增 ElevenLabs 語音克隆功能。
- 語音合成器新增了在保持音調不變的情況下加快播放速度的模式。
- 加入 vmaf 元素,使用 Netflix 的 VMAF 框架評估影片的感知品質。
- 新增了基於 Fraunhofer MPEG-H 解碼器的 MPEG-H 音訊解碼插件,支援解碼 MP4 媒體容器。
- 增強了對隱藏式字幕(CC)和文字處理的支援。
來源: opennet.ru
