问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Intel VAAPI/QSV/oneVPL区别简介

创作时间:
作者:
@小白创作中心

Intel VAAPI/QSV/oneVPL区别简介

引用
CSDN
1.
https://m.blog.csdn.net/noevil/article/details/137649180

一、常用视频加速接口汇总


libmfx就是Intel QSV.

二、VAAPI

VAAPI (视频加速API,Video Acceleration API)包含一套开源的库(LibVA) 以及API规范, 用于硬件加速下的视频编解码以及处理,只有Linux上的驱动提供支持。由Intel主导,但是AMD,Nvidia也都(部分)支持这套API。

代码仓库地址:https://github.com/intel/libva

1. intel vaapi


VAAPI驱动属于用户态驱动,用于支持LibVA,底层是i965/1915驱动。Intel提供了两种开源的VAAPI驱动:intel-vaapi-driver以及intel-media-driver,intel-media-driver较intel-vaapi-driver新,维护更积极,所以目前更推荐使用intel-media-driver。

代码仓库地址:https://github.com/intel/media-driver

软件仓库名称为:intel-media-va-driver-non-free/intel-media-driver

2. nvidia vaapi

英伟达GPU可以通过libva-vdpau-driver提供支持所有显卡的驱动,但实际上底层调用的是VDPAU,只是对API进行了翻译,所以需要配置好VDPAU才能使用。

还有一个使用NVDEC作为后端的VAAPI驱动,https://github.com/elFarto/nvidia-vaapi-driver

Nouveau open-source driver supports both VA-API and VDPAU:

  • GeForce 8 series and newer GPUs up until GeForce GTX 750 are supported by libva-mesa-driver and mesa-vdpau.
  • Requires nouveau-fwAUR firmware package, presently extracted from the NVIDIA binary driver.

3. AMD

AMD and ATI open-source drivers support both VA-API and VDPAU:

  • VA-API on Radeon HD 2000 and newer GPUs is supported by libva-mesa-driver.
  • VDPAU on Radeon R600 and newer GPUs is supported by mesa-vdpau.

AMDGPU PRO proprietary driver is built on top of AMDGPU driver and supports both VA-API and VDPAU in addition to AMF.

  • AMF on Fiji and newer GPUs supported by amf-amdgpu-proAUR.

4. Windows

windows上也支持VAAPI了,需要Direct3D 12,可以参考
https://devblogs.microsoft.com/directx/video-acceleration-api-va-api-now-available-on-windows/
不过,就当作玩具吧,工业生产可能还差点意思。

Windows上有DXVA2 / D3D11VA都很成熟。
DXVA2 / D3D11VA。标准Windows API,支持通过Intel显卡驱动进行视频编解码,FFmpeg有对应实现。

三、QSV

Intel Quick Sync Video(QSV)是由Intel开发的专门用于视频编码和解码的技术。这项技术从Sandy Bridge微架构开始引入,自那时起,一直被集成在Intel的大多数桌面和移动处理器中。

这项技术充分利用了内置在处理器中的专用媒体处理能力,提供了一种更快、更高效的方式来处理视频任务。使用QSV,可以大幅度减少CPU的负载,同时保持高质量的视频输出。

由Intel Media SDK提供实现,提供一套用于视频编解码以及处理(VPP)的API:libmfx,支持Linux/Windows,具体介绍可查看:Intel Media SDK。

libmfx 是 Intel 的专有库,用于在 Linux 和 Windows 上使用 Quick Sync 硬件。

源码仓库:https://github.com/Intel-Media-SDK/MediaSDK

不过这个已经停止更新了,转向oneVPL了。

四、oneVPL

oneAPI Video Processing Library, QSV的继任者,不了解,不做评价。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号