FFmpeg 6.1 发布,7.0时代即将来临
平均阅读时长为 2分钟
11月10日,FFmpeg 6.1正式发布。FFmpeg 发布版本的时候,按照惯例,会选择一些物理学家名字作为代号,这一新版本代号为“Heaviside”。主要为纪念伟大的英国数学家和物理学家奥利弗·黑维塞(Oliver Heaviside)。奥利弗·黑维塞(Oliver Heaviside)自学成才,没有系统经历过高等教育,但在物理、数学、工程领域成果非凡,其名言“数学分2种,严格的和物理直观化的。前者的范围窄;后者粗犷而广泛。拘泥于公式的严格证明只会令绝大多数的数学物理探究止步不前。难道我要在完全理解消化反应的所有机理以前,拒绝进食吗?”
(Mathematics is of two kinds, Rigorous and Physical. The former is Narrow: the latter Bold and Broad. To have to stop to formulate rigorous demonstrations would put a stop to most physico-mathematical inquiries. Am I to refuse to eat because I do not fully understand the mechanism of digestion?)也一直为人所津津乐道,详细生平见链接
Heaviside https://zh.wikipedia.org/zh-cn/%E5%A5%A7%E5%88%A9%E5%BC%97%C2%B7%E9%BB%91%E7%B6%AD%E5%A1%9E
FFmpeg此次发布重要信息包含以下几点:
1. 支持增强版本的RTMP/FLV,主要支持了HEVC、VP9、AV1等编解码格式。由于Adobe已经停止RTMP维护更新,这导致许多公司都在通过私有的方式支持新的视频编码格式。FFmpeg这次官方支持,长期看有可能统一混乱的私有方案,但在短期内也会增加混乱与工作量,因为企业不得不同时维护私有和开放多套标准。诚如著名的网络漫画网站https://xkcd.com/927/而言,我们又多了一个标准。
2. 对新一代编码标准VVC 和 MPEG-5 EVC (Essential Video Coding) 的parser,muxer ,demuxer以及bsf的支持。FFmpeg社区一直在积极开发原生的VVC的decoder。目前看,容器格式和bit stream相关的支持已经初步完成,让我们等待它原生的VVC 解码器被合并;另一方面,MPEG-5 EVC相关的支持工作也在积极的进行,只是其编解码器以第三方库的方式支持(https://github.com/mpeg5)。
3. FFmpeg重新实现了自己的FFT,用于其内部编解码器和滤波器的FFT、MDCT、DCT和DST实现已经完全被更快的libavutil/tx所取代;这个改动一方面带来速度上面的收益,另外一方面,也使得库的大小大为减小。
4. 硬件加速继续迭代,一方面,FFmpeg已经支持了基于Vulkan的解码(当然,如同大多数硬件加速一样,它要在一定的限制条件下才能使用)。另外,也进一步支持了基于VAAP的AV1编码。说到VAAPI,最让人吃惊的莫过于,FFmpeg通过libva-win32项目,可以在Windows上使用FFmpeg VAAPI的相关功能,这要感谢微软的工程师们在Windows上的WSL项目上的努力。
具体改进亮点如下:
- libaribcaption译码器
Playdate 视频 Decoder 和 Demuxer 在Windows上扩展对libva-win32的VAAPI支持 命令行新增选项:-readrate_initial_burst arls 音频滤镜 setts和asetpts过滤器中的命令支持 Vulkan解码hwaccel,支持H264、HEVC和AV1 color_vulkan过滤器 bwdif_vulkan过滤器 nlmeans_vulkan过滤器 RivaTuner视频解码器 xfade_vulkan过滤器 vMix视频解码器 基本视频编码解析器,混音器和解音器 基本视频编码帧合并bsf bwdif_cuda过滤器 微软RLE视频编码器 原始AC-4混频器和解混频器 原始的VVC比特流解析器,复用器和解复用器 位流过滤器用于编辑VVC流中的元数据 比特流过滤器转换VVC从MP4到Annex B videotoolbox的Scale_vt过滤器 videotoolbox的transpse_vt过滤器 支持P_SKIP提示以加速libx264编码 支持HEVC、VP9、AV1编解码器,增强flv格式 Apsnr和asisdr音频滤波器 OSQ解码器和编码器 在增强的RTMP协议中支持HEVC、VP9、AV1编解码器 CRI USM解混器 ffmpeg命令行'-top'选项已弃用,取而代之的是setfield过滤器 AV1编码器 ffprobe XML输出模式更改为考虑同一父元素中的多个变量字段元素 - Ffprobe -output_format选项作为-of的别名添加
除去这些特性,FFmpeg内部也有一些优化,包含了:
- 在视频解码器中大幅减少内存分配,从而降低内存等开销
- 对 DSP 代码的许多部分进行了 RISC-V 优化,针对常用解码器已经被合并
提高每个数据包的时间戳和帧持续时间的正确性,从而提升变帧率视频的支持
下一个主要版本将是7.0版本,按照计划,将在2024年2月份发布。FFmpeg最近这些年,虽然也经历了一些波折,但发展并未停滞,相反越来越迅速,而我们也即将迎来FFmpeg 7.0的大版本。
Reference:
https://ffmpeg.org/index.html%23pr6.1
https://github.com/veovera/enhanced-rtmp/blob/main/enhanced-rtmp.pdf
https://devblogs.microsoft.com/directx/video-acceleration-api-va-api-now-available-on-windows/
* 感谢赵军老师对本篇文章的技术审校!
10天倒计时!深圳站大会亮点前瞻!
跳转LiveVideoStackCon 2023 深圳站 官网,了解更多信息
阅读原文 关键词
编解码器
解码器
格式
编码器
视频编码
最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。