4k硬件解码是什么(4k硬解码是什么意思)

视频编解码硬件方案最早是在嵌入式领域中广泛存在,如采用DSP,FPGA,ASIC等,用来弥补嵌入式系统CPU等资源能力不足等,但随着视频分辨率越来越高(从CIF经历720P,1080P发展到4K,8K),编码算法越来越复杂(从mpeg2经历h264,发展到h265),PC的软件规模也越来越庞大,视频应用也越来也丰富,单独靠CPU来编解码已经显得勉为其难,一种集成在显卡中gpu用来参与编解码工作已经成为主流。

一、gpu存在的形式

gpu主要驻留在显卡上,配合显卡参与显示,绘图,编解码,并行计算等工作。常见形式有以下3类。

1) 独立显卡形式,如AMD和NVIDIA独立显卡

独立显卡

2) 集成在CPU中的核显,如intel的某些带核显处理器和AMD某些带核显处理器

带核显的处理器

3) 视频加速卡

专门用来在服务器端进行编解码使用,如Intel的 VCA卡等。

视频加速卡

二)gpu编解码的常用技术方案

1)厂家SDK方案

对应gpu编解码,硬件厂家都有相应SDK方案,应用开发者可以直接调用厂家的SDK 来完成编解码器工作。


NVIDIA

AMD

INTEL

编码器

NVENC

UVD

参考sample_encode

解码器

NVDEC

VCE

参考sample_decode

对应的SDK

Video_Codec_SDK

AMF SDK

Intel Media SDK

2)FFMPEG方案

ffmpeg对厂家SDK进行封装和集成,实现部分的硬件编解码


NVIDIA

AMD

INTEL

编码器

xxx_nvenc

xxx_amf

xxxx_qsv

解码器

xxx_ cuvid

暂未实现

xxxx_qsv

其中xxx标识编码类型,如h264,h265,mpeg2,vp8,vp9等,其次在ffmpeg中软件编解码器可以实现相关硬解加速,如可以在h264解码器中可以使用cuda 加速,qsv加速,dxva2 加速,d3d11va加速,opencl加速等。


cuda

qsv

dxva2/d3d11va

opencl

应用场景

适应NVIDIA显卡平台,但跨OS

适应Intel显卡平台,但跨OS

适用Windows OS,但跨硬件平台

仅仅支持opencl的硬件平台

3)gstreamer方案


gst-msdk

gst-vaapi

gst-d3d11

编码器

msdkxxxenc

vaapixxxenc

解码器

msdkxxxdec

vaapixxxdec

d3d11xxxdec


应用场景

仅限intel gpu

仅限intel gpu的linux系统

仅限Windows D3D加速,跨硬件平台

其中xxx标识编码类型,如h264,h265,mpeg2,vp8,vp9等。在Linux关于gst-msdk和gst-vaapi的差异如下:

gst-msdk和gst-vaapi插件区别

以上是关于视频在PC上的硬解硬编的常见方案。获取源代码或了解更多信息请关注微信公众号:AV_Chat