令人振奋的FFmpeg7.0多媒体库已经发布!FFmpeg7.0最引人注目的是推出了新的本地VVC解码器,该解码器目前是支持多用途视频编码的试验性解码器,同时还引入了多线程FFmpegCLI工具。
FFmpeg多线程CLI支持是他们多年来最大的代码重构,对项目来说是一项艰巨的任务。在x86_64和AArch64处理器内核数不断增加的今天,这也是一个好消息。
FFmpeg7.0还拥有DVD-Videodemuxer,初步支持AOMediaIAMF的沉浸式音频模型和格式,ffplay的Vulkan渲染器,以及许多其他更改。
FFmpeg7.0是一个相当大的版本,官方的变更日志指出了这一点:
-DXVDXT1编码器
-LEADMCMP解码器
-使用外部库libxevd的EVC解码
-使用外部库libxeve的EVC编码
-QOA解码器和解复用器
-aap过滤器
-解复用、解码、过滤、编码、ffmpegCLI中的解复用、解码、过滤、编码和复用现在全部并行运行
-启用gdigrab设备,使用hwnd=HANDLER语法抓取窗口
-IAMF原始解复用器和复用器
-D3D12VA硬件加速H264、HEVC、VP9、AV1、MPEG-2和VC1解码
-tiltandshift过滤器
-qrencode过滤器和qrencodesrc源
-quirc过滤器
-lavu/eval:在表达式中引入randomi()函数
-VVC解码器(实验性)
-fsync过滤器
-RawCaptionswithTime(RCWT)关闭字幕多路复用器
-ffmpegCLI-bsf选项现在可用于输入和输出
-ffmpegCLI选项现在可用作-/opt,相当于-opt>。
-showinfobitstreamfilter
-现在需要兼容C11的编译器;请注意,这一要求在不久的将来将提升至C17,因此如果您的构建环境不支持C17,请考虑更新
-将QSV编码器的默认比特率控制方法从VBR更改为CQP。
-移除过时的ffmpegCLI选项-psnr和-map_channel
-DVD-Videodemuxer、由libdvdnav和libdvdread支持
-ffprobe-show_stream_groups选项
-ffprobe(使用-export_side_datafilm_grain)现在可打印胶片颗粒元数据
-AEA多路复用器
-ffmpegCLI回环解码器
-在增强的flv格式中支持PacketTypeMetadata的PacketType
-支持hwaccel的ffplay。支持hwaccel解码的ffplay(通过libplacebo依赖于vulkan渲染器)
-dnn过滤器libtorch后端
-Android内容URIs协议
-AOMediaFilmGrainSynthesis1(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
FFmpeg7.0可从FFmpeg.org下载。我将很快发布支持CLI多线程的新FFmpeg基准测试。