新闻源发布时间:2025年6月9日
原作者:Khronos Vulkan 视频子工作组成员 Lynne Iribarren,和AMD 员工也是 Vulkan 视频子工作组主席的 Ahmed Abdelkhalek
随着 Vulkan 规范 1.4.317 版本的发布,视频扩展集再次得到扩展,引入了 VP9 解码。VP9 是首批获得大规模采用的免版税编解码器之一,至今仍广泛应用于视频点播和实时通信领域。
此版本完善了目前计划中的解码相关扩展集,使开发者能够为所有主流现代编解码器构建独立于平台和供应商的加速解码流水线。
由 Khronos® 的 Vulkan® 工作组开发的一组扩展名为“Vulkan Video”,为开发人员提供了独立于供应商的现代 GPU 硬件中的视频解码和编码功能访问。
如今,随着 Vulkan 规范 1.4.317 版本的发布,这套扩展功能再次得到扩展,引入了 VP9 解码。VP9 是首批获得大规模采用的免版税编解码器之一,至今仍广泛应用于视频点播和实时通信领域。
此版本完成了当前计划的解码相关扩展集,使开发人员能够为所有主要的现代编解码器,构建独立于平台和供应商的加速解码管道。

解码VP9扩展
新的 VK_KHR_video_decode_vp9 扩展基于核心 Vulkan Video 扩展构建,沿袭了早期 H.264、H.265 和 AV1 解码扩展所采用的方法。它引入了必要的 API,用于查询可用的 VP9 解码功能并指定每张图片的 VP9 参数。此外,还专门为 VP9 提供了新的视频标准标头:vk_video/vulkan_video_codec_vp9std.h和vk_video/vulkan_video_codec_vp9std_decode.h。这些标头定义了配置和管理 VP9 解码会话和操作所需的 VP9 编解码器参数。
虽然 VP9 作为编解码器的出现早于 AV1,但 Vulkan VP9 解码扩展是在 AV1 扩展之后开发的,并能够在此基础上进行构建。由于 AV1 部分基于 VP9,并且共享类似的编码工具和结构元素,因此现有的 AV1 解码扩展为在 Vulkan 中实现 VP9 解码提供了有用的基础。这种代码和设计的复用,通过简化开发流程并确保所支持编解码器之间的一致性,使实现者和用户都受益。
VP9 解码与之前视频解码扩展的一个关键区别在于,每个 VP9 数据包都是独立的。与基于 MPEG 的编解码器(使用 NAL(网络抽象层)单元将比特流分解为单独解析的片段)或使用 OBU(开放比特流单元)的 AV1 不同,VP9 将一帧的所有数据编码在一个字节数组中。这种设计无需提取和解释比特流中的嵌套子单元,从而简化了解析过程。
与 Vulkan Video 支持的其他编解码器相比,VP9 不需要通过视频会话参数对象进行全局状态管理,这使得它成为使用 Vulkan 解码扩展实现的最简单的编解码器。这种简易性使 VP9 成为新用户或希望在扩展对更复杂编解码器的支持之前先入门 Vulkan Video 的实现者的理想起点。对于需要会话参数的编解码器,最近合并的 VK_KHR_video_maintenance2 扩展有助于简化其管理,降低代码复杂性。
呼吁行动、反馈和支持!
Vulkan 工作组鼓励开发者利用 Vulkan Video 扩展,使其视频应用程序的性能和功能达到新的高度。欢迎在 Vulkan GitHub 问题跟踪器上针对 VK_KHR_video_decode_vp9 提出反馈。问题将及时更新,提供 Vulkan Video 相关资源的链接(如有)。我们也鼓励开发者重点介绍对其用例重要的其他功能,以便在未来的 Vulkan Video 更新中加以考虑。
即将发布的Vulkan SDK 将包含更新的 Vulkan 标头和验证层支持,以支持新发布的视频扩展。在此期间,Vulkan 标头可在此处获取 (https://github.com/KhronosGroup/Vulkan-Headers)。
支持 Decode VP9 扩展以及所有先前发布的 Vulkan Video 扩展的 Vulkan 驱动程序现已可用,其中包括:
- NVIDIA:适用于 Windows 和 Linux 的Beta 版驱动程序
- AMD:适用于 Windows 的Beta 版驱动程序
- 英特尔:Windows 驱动程序即将推出
Vulkan Video 在开源社区中的应用持续强劲增长。GStreamer 和 FFmpeg 多媒体框架均包含 Vulkan Video 解码和编码路径,并且针对 AMD 和 Intel GPU 的 RADV 和 ANV 开源 Vulkan 驱动程序也积极维护对 Vulkan Video 的支持。
Khronos 开源 Vulkan Video 示例正在更新,以演示 Decode VP9 扩展的使用方法。此外,Víctor Jáquez 的Vulkan Video 状态页面提供了 Vulkan Video 相关生态系统资源的全面汇编。
Khronos 鼓励业界广泛参与 Vulkan Video 的持续演进,包括扩展其以支持更多编解码器和功能。有关 Khronos 会员资格及参与标准开发的信息,请访问 khronos.org/members。
Vulkan Video 旨在为各种视频应用提供高效的跨平台解决方案。未来的增强功能将继续以实际开发者需求和用例为导向。Vulkan 工作组感谢业界一直以来的关注和支持!
原博客链接:https://www.khronos.org/blog/khronos-announces-vulkan-video-decode-vp9-extension
内容来源|www.khronos.org
审核校对|Dennis Fu
翻译排版|方莹