你的视频工具要变快了!FFmpeg 8.1 重磅更新,Vulkan 加持性能飞跃

94 阅读3分钟

即使你从未直接使用过 FFmpeg,你也几乎肯定使用过基于它开发的视频编辑器或媒体转换工具。FFmpeg 是最流行的音频和视频录制、转换及流媒体工具之一,其最新版本 8.1 现已发布,并带来了一些由 Vulkan 驱动的增强功能。

对于某些媒体编解码器,FFmpeg 提供了多种编码和解码选项,利用合适的硬件可以显著提升性能。过去的几个版本已将 Vulkan Compute 添加为 H.264(最常见的视频格式之一)、HEVC(苹果设备和媒体流中较新的格式)、ProRes RAW 以及 FFv1 的可选加速方案。最新的 FFmpeg 8.1 版本又将 DPX 解码 以及 标准 ProRes 的编码/解码 加入了这一支持列表。

FFmpeg 8.1

你可能知道 Vulkan 是为许多现代游戏和 3D 加速应用提供动力的图形 API,但它也能处理一些通用计算任务。维护 Vulkan 标准的 Khronos 集团解释道:“FFmpeg 利用 Vulkan Compute,在消费级 GPU 上无缝加速甚至专业级视频的编码和解码 —— 从而在不依赖专用硬件的情况下,大规模释放 GPU 的计算并行能力。这种方法是对 Vulkan Video 固定功能编解码器支持的补充,将加速扩展到了前者未覆盖的格式和工作流程中。”

基于 Vulkan 的编码器和解码器允许更多进程保留在 GPU 上进行多线程操作,而不是在 CPU 和 GPU 操作之间频繁切换。目前尚不清楚在典型 PC 上能获得多大的性能提升,但在更多工作流程中消除 CPU 瓶颈是一个重要的里程碑。随着视频编辑器、媒体转换器、音频工具和媒体播放器更新到最新版本的 FFmpeg 并启用 Vulkan 功能,它们也将获得同样的性能和效率提升。

目前在 Vulkan 上对 VC-2、JPEG 和 APV 解码器的开发仍在进行中,未来可能会支持 JPEG2000 和 PNG。相关博客文章指出:“未来,仅剩的具有有意义 GPU 加速潜力的编解码器只有 JPEG2000 和 PNG —— 其余的要么实际用例有限,要么无法从基于计算的加速中受益。”

除了 Vulkan 相关更新,FFmpeg 8.1 还有其他几项值得注意的改进:

现在可以解析 EXIF 元数据。

通过使用 libmpeghdec,现在支持解码 xHE-AAC Mps212 和 MPEG-H 音频。

在 Direct3D 12 上现在支持 H.264/AV1 编码及其他操作。

Rockchip 设备现在支持 H.264/HEVC 硬件编码。

安装 FFmpeg 的最佳方式是通过软件仓库,例如 Ubuntu 和 Debian 上的 APT、Mac 上的 Homebrew,或 Windows 上的 WinGet。官方网站的下载页面也提供了适用于各种操作系统的安装包。如果你还想了解更多关于 FFmpeg 等相关使用的更多教程,欢迎关注简鹿办公。