几个平台环境里视频编解码和图像scale的硬件加速的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了几个平台环境里视频编解码和图像scale的硬件加速的方法相关的知识,希望对你有一定的参考价值。

记录一下遇到几个平台里的视频编解码和图像scale的硬件加速的方法

1,intel平台
可基于VA-API实现视频codec和图像scale的硬件加速,具体可使用libyami这个接口友好的封装库。
加速处理过程中图像位于GPU内存,用libva的Surface表示。其在原生的linux和android NDK环境中均可用。

2,Allwinner平台
可以直接使用特有的 cedarx 硬件引擎实现视频编解码加速;使用G2D组件实现图像scale的硬件加速。
其SDK包可从其官方github上获取。

3,opemnax接口
openmax只是一套开放的媒体处理接口,有些厂商不直接提供原生的媒体SDK,将媒体处理功能以Openmax接口来提供。
此时只能使用Openmax来使用硬件加速功能了。具体需要阅读Openmax接口规范,以及厂商自身的额外提供的扩展接口。
此类接口比较广泛,比如MTK/Intel/RasperryPi等,都可用。
具体的功能是通过OMX组件来提供的,因此具体需要看实际有组件可用。

4,Android的MediaCodec接口
MediaCodec接口为新版Android的所提供的媒体处理接口,其本质上也是基于各个硬件平台厂商提供的硬件加速接口封装而成。比如在MTK8163平台上基于Openmax接口做的封装。
主要是视频编解码功能。

5,Nvidia VideoCodec
直接利用显卡的内部的硬件视频编解码音频来进行编解码(不是CUDA计算引擎),直接使用vidia-video-codec-sdk来做开发即可。好处是与CUDA交互比较方便。
类似主要是视频编解码功能。

其他平台没有接触到,暂不记录。

以上是关于几个平台环境里视频编解码和图像scale的硬件加速的方法的主要内容,如果未能解决你的问题,请参考以下文章

昇腾实战丨DVPP媒体数据处理视频解码问题案例

开发那些事儿:如何解决RK芯片视频处理编解码耗时很长的问题?

多路RTSP流解码:最高可支持12路视频编解码

NVIDIA之硬件编解码模块NVCODEC

GPU编解码GPU硬解码---DXVA

ffmpeg硬件编解码Nvidia GPU