Vulkan Video实现GPU加速视频编码/解码
正文字数:929 阅读时长:2分钟
Vulkan是一套跨平台的图形API,由Khronos组织牵头进行制定,普遍被看作是OpenGL的后继者,目前版本已经来到1.2.175,仍然在不停地进行更新,其在非Windows平台上面已经逐渐变成了首选使用的图形API。在未来,Vulkan甚至会提供模拟DirectX等其他图形API的功能,有很大的发展前景。
文 / Michael Larabel
整理、审校 / LiveVideoStack
多年来,我们一直渴望了解更多关于Vulkan Video API的信息,该API本应在2020年上半年推出,现在终于推出了1.2.175临时更新版。新的Vulkan Video扩展允许GPU加速视频编解码。最初的公共工程被视为一个临时规范,编解码器覆盖范围有限,但会随着时间的推移而迭代更新。
Vulkan Video允许GPU加速编解码,并通过调度、同步和其他Vulkan功能与Vulkan API集成。Vulkan Video的主要新扩展是VK_KHR_video_queue,VK_KHR_video_decode _queue和VK_KHR_video_encode_queue。
Vulkan Video被设计在编解码器覆盖范围方面是可扩展性的,而最初的新扩展有VK_EXT_video_encode_h264,VK_EXT_video_decode_h264和VK_EXT _video_decode_h265。
目前还没有VP9和AV1开源/免费视频编解码器。庆幸的是Khronos组织[1]声明,他们将在未来的Vulkan更新中推出。他们最初的重点是确保核心架构组件准备就绪,一旦这一切解决,他们将扩大编解码器的支持。很遗憾它们没能在今天的首次亮相中登场,但将来不久就能看到。Vulkan H.265编码扩展也仍在开发中。
Khronos组织在Khronos.org上发布了一篇博客文章,其中更详细地概述了Vulkan Video功能,可以从中了解Vulkan视频编码/解码/转码。
最早可以使用Vulkan驱动程序覆盖视频扩展的是NVIDIA。NVIDIA发布了一个新的测试版Vulkan驱动程序,支持这些Vulkan Video扩展。AMD或Intel暂时还未计划,通过其(开源)Linux Vulkan驱动程序引入Vulkan Video支持。至少在Intel,鉴于ANV的资源和已经拥有的领先的开源多媒体堆栈,有望很快就会引入。在AMD方面,到目前为止,他们一直依赖于基于Gallium3D的视频加速技术,他们是否/何时将AMDVLK应用于Vulkan Video,以及独立的RADV驱动程序是否也能支持这些视频扩展,这将是一个值得期待的问题。
NVIDIA已经发布了一个Vulkan Video解码器的开源示例[2]。Khronos组织和他们的合作伙伴还致力于一致性测试套件、更多的代码样本,以及围绕Vulkan Video的其他补充内容。
相比现在不同视频接口(尤其是Windows和Linux之间支持不同API)的碎片化,希望一旦Vulkan Video 1.0规范定稿,我们将看到更多的多媒体软件使用此视频编码/解码API。有了Vulkan Video 1.0,当扩展的编解码器支持出现时,它很有可能成为GPU加速视频编码/解码的主流接口,希望它比OpenMAX做得更好热度更高。
临时的Vulkan Video扩展是目前规范更新中最重要的工作,不过在Vulkan 1.2.175中还有其他新扩展。
参考链接
[1]https://www.khronos.org/blog/an-introduction-to-vulkan-video
[2]https://github.com/nvpro-samples/vk_video_samples
Vulkan Video实现GPU加速视频编码/解码相关推荐
- 使用GPU进行视频编解码
GPU视频编解码研究现状 迄今为止,已有许多关于使用GPU加速视频编解码的文章发表,如下表所示.目前GPU加速视频编码的主要集中在运动估计(ME,Motion Estimate),运动补偿(MC,Mo ...
- 硬件编解码开发 linux,Intel平台硬件加速视频编解码开发
视频编解码分为硬件加速以及非硬件加速.硬件加速是指通过显卡,FPGA等硬件进行视频编解码,由于硬件有专门优化,所以性能高,能耗低,非硬件加速编解码是指通过CPU进行视频编解码,性能就没那么高(虽然有相 ...
- 2023-04-18:ffmpeg中的hw_decode.c的功能是通过使用显卡硬件加速器(如 NVIDIA CUDA、Intel Quick Sync Video 等)对视频进行解码,从而提高解码效
2023-04-18:ffmpeg中的hw_decode.c的功能是通过使用显卡硬件加速器(如 NVIDIA CUDA.Intel Quick Sync Video 等)对视频进行解码,从而提高解码效 ...
- FFMPEG让群晖DSM7.X版本的Video Station支持DTS视频编码和EAC3音频编码
FFMPEG让群晖DSM7.X版本的Video Station支持DTS视频编码和EAC3音频编码 安装ffmpeg 恢复 参考文章 安装ffmpeg 群晖 >套件中心 >设置>套件 ...
- 视频编码解码基本知识
最近在做摄像头视频的数据处理,得到了网络相机的.h264格式的数据,需要做解码处理,由于对视频的编码解码原理不太了解,因此查找资料总结一下 为什么要进行视频编码? 视频编码又称为视频压缩,伴随着用户对 ...
- ---WebCam网络摄像头12 ---图像编码解码,视频编码解码
1.图像格式与图像编码,图像显示 图像被拍摄后,一般都会按照某种编码方式被压缩,使得占用更少的空间来存放(或传输).然后再播放的时候又会使用想用的解码方式将图像还原成源图像(指显示器认可的图像格式,一 ...
- 使用FFMPEG——4.2.2版本实现提取视频编码解码文件,ffmpeg基础学习。
FFMPEG基础学习 视频解码,并且输出到文件. 我通过雷霄骅的博客学习FFMPEG,在学习过程中发现"雷神"的代码由于版本的问题,很多代码已经无法在FFMPEG--4.2.2版本 ...
- 利用第三方解码器ffmpeg让群晖DSM6.2.4版本的Video Station支持DTS视频编码和EAC3音频编码
前言 截至2022年5月6日,此方法可用! 本文章可以解决群晖版本6.2.4-25556 Update5(Video Station版本2.5.0-1656)在播放dts.eac3音频编码的视频时提示 ...
- 视频编码解码(H264编码实战)
基本步骤 打开编码器 在打开编码器时,要设置一些参数,例如具体使用的哪一个编码器,编H264时要使用libx264,编H265时要使用libx265. 还需要设置GOP,码流大小.分辨率宽和高也需要设 ...
最新文章
- 温网停赛,AI不停赛:斯坦福新研究模拟网球名将打比赛
- 多语言切换jquery.i18n.min.js
- qt中json构造一个数组_告别撸单元格!我来分享Excel中如何利用一条公式得到一个数组...
- Place the Guards
- IOS绘制小黄人,对绘图知识的一个练习
- ACwing 4. 多重背包问题 I(DP)
- 日常总结——域环境管理
- hadoopsdk使用_Hadoop的一些基本操作
- HDU 3008 Warcraft
- 【技术分享】数据之大,云动未来 - 弹性云数据库技术解析
- 微信emoji表情包存入数据库报错处理
- 在大学里我们应该学习什么
- Java集成socket.io
- VirtualBox
- hdu2639(01背包变形-第k大背包)
- 检索报告计算机类,计算机检索报告.docx
- 【Cesium入门】四、相机系统
- 焦虑 程序员_我如何克服焦虑和沮丧来完成freeCodeCamp的前端开发程序
- 豆沙绿 RGB值 hex值 及eclipse设置背景色步骤
- 重邮计算机专业毕业月薪多少,高校就业质量报告⑥ | 重庆邮电大学2020届毕业生月均收入6800元...
热门文章
- [爬虫+数据分析] 分析北京Python开发的现状
- 我的前端工具集(四)树状结构后篇
- 利用 git format-patch 和 git send-email 把修改的 patch 文件发送给 ffmpeg-devel
- 关于javascript中私有作用域的预解释
- apache虚拟主机301跳转问题
- 换光纤猫 ZXA10 F420
- ExtAspNet应用技巧(十七) - 新增菜单
- 洛谷 - P4717 【模板】快速莫比乌斯/沃尔什变换 (FMT/FWT)
- 牛客多校3 - Operating on a Graph(并查集+链表合并)
- FZU - 2202 犯罪嫌疑人(逻辑思维+简单模拟)