FFmpeg 7.0 發布支援本地VVC 解碼和多線程CLI
令人振奮的FFmpeg 7.0 多媒體庫已經發布! FFmpeg 7.0 最引人注目的是推出了新的本地VVC 解碼器,該解碼器目前是支援多用途視訊編碼的試驗性解碼器,同時也引入了多執行緒FFmpeg CLI 工具。
FFmpeg 多執行緒CLI 支援是他們多年來最大的程式碼重構,對專案來說是一項艱鉅的任務。在x86_64 和AArch64 處理器核心數量不斷增加的今天,這也是一個好消息。
FFmpeg 7.0 還擁有DVD-Video demuxer,初步支援AOMedia IAMF的沉浸式音訊模型和格式,ffplay 的Vulkan 渲染器,以及許多其他變更。
FFmpeg 7.0 是一個相當大的版本,官方的變更日誌指出了這一點:
版本7.0:
– DXV DXT1 編碼器
– LEAD MCMP 解碼器
– 使用外部函式庫libxevd 的EVC 解碼
– 使用外部庫libxeve 的EVC 編碼
– QOA 解碼器和解復用器
– aap 過濾器
– 解復用、解碼、過濾、編碼、ffmpeg CLI 中的解復用、解碼、過濾、編碼和復用現在全部並行運行
– 啟用gdigrab 設備,使用hwnd=HANDLER 語法抓取視窗
– IAMF 原始解復用器和復用器
– D3D12VA 硬體加速H264、HEVC、VP9、AV1、MPEG-2 和VC1 解碼
– tiltandshift 過濾器
– qrencode 過濾器和qrencodesrc 來源
– quirc 過濾器
– lavu/eval:在表達式中引入randomi() 函數
– VVC 解碼器(實驗性)
– fsync 過濾器
– Raw Captions with Time (RCWT) 關閉字幕多工器
– ffmpeg CLI -bsf 選項現在可用於輸入和輸出
– ffmpeg CLI 選項現在可作為-/opt,相當於-opt>。
– showinfo bitstream filter
– 現在需要相容C11 的編譯器;請注意,這項要求在不久的將來將提升至C17,因此如果您的建置環境不支援C17,請考慮更新
– 將QSV 編碼器的預設位元率控制方法從VBR 變更為CQP。
– 移除過時的ffmpeg CLI 選項-psnr 和-map_channel
– DVD-Video demuxer、由libdvdnav 和libdvdread 支持
– ffprobe -show_stream_groups 選項
– ffprobe(使用-export_side_data film_grain)現在可列印膠片顆粒元數據
– AEA 多工器
– ffmpeg CLI 回環解碼器
– 在增強的flv 格式中支援PacketTypeMetadata 的PacketType
– 支援hwaccel 的ffplay。支援hwaccel 解碼的ffplay(透過libplacebo 依賴vulkan 渲染器)
– dnn 過濾器libtorch 後端
– Android 內容URIs 協議
– AOMedia Film Grain Synthesis 1 (AFGS1)
– 針對AAC 的RISC-V 優化、flac、jpeg-2000、lpc、rv4.0、svq、vc1、vp8、以及更多
– 針對HEVC 解碼的Loongarch 優化
– 針對HEVC 的重要AArch64 最佳化
– MP4/ISOBMFF 中的IAMF 支持
– 支援HEIF/AVIF 靜態影像和平鋪靜態影像
– AV1 中的杜比視界設定檔10 支持
– MP4/ISOBMFF 中的環境觀看環境元資料支持
– 使用libx264.HDR10 和libx265 編碼時的HDR10 元資料直通、和libsvtav1
FFmpeg 7.0 可從FFmpeg.org下載。我將很快發布支援CLI 多線程的新FFmpeg 基準測試。