为什么一个命令行工具发新版本,能炸出Hacker News 600多条评论?因为FFmpeg 9.0把压箱底的旧架构清了个遍,还一脚踢开了VVC的“外部依赖”拐杖。这次更新,14个月里2300多次提交,180位贡献者在忙活,而用户最实在的收获,就藏在两条数字里:同画质码率腰斩,和运动画面压缩再抠出12%的效率。

先看最响的炮——原生VVC(H.266)解码。在这之前,想在FFmpeg里碰VVC,得小心翼翼地挂上libvvc之类的第三方库,速度还经常被商业实现吊打。9.0直接把解码器做进内核,跑分已经比不少付费方案都快。VVC标榜的“同等质量下比HEVC省一半码率”终于不再停留在白皮书里,一条命令就能冲。

打开网易新闻 查看精彩图片

AV1这边也没闲着。运动估计模块彻底重写,子块级补偿让高运动场景的压缩率最高抬升12%。libaom-av1编码器多了一个speed 11档位,专门伺候带AVX-512的实时推流。哪怕你还在用老旧的AVC/H.264,libx264集成的tune: hdr也能把HDR元数据治得服服帖帖,不用再跟colorprim、transfer、colormatrix这些参数死磕。

滤镜图引擎终于把“哑巴丢帧”的毛病治了。过去的filtergraph,在帧率和格式变化时总偷偷吞帧,或者吐出一堆混合格式的怪胎,排错排到怀疑人生。9.0内部直接重写了执行引擎,动态帧率和格式协商成了原生能力。硬件加速滤镜也不再各自为战,scale_cuda、transpose_nv12、eq_vulkan这些家伙现在能串联在一起跑,GPU利用率终于不是摆设。

当然,版本号从7.x跳到9.0不是拍脑袋决定的。能带来不兼容API变更的特性,都塞进去了:旧的内部拐杖被砍、架构现代化改造,外加对新编解码器的大赌注。如果你还没升级,小心旧脚本和这套新格局打架;一旦迁完,实时视频处理的玩法,要重新盘一遍了。