您的位置:首页 > 其它

视频解码和硬解码

2013-11-12 11:45 162 查看
首先视频都是有经过编码的,为什么要编码呢?因为视频信号数字化后带宽很高,通常在20M/S以上,计算机很难对之进行保存和处理。为了减小带宽即减小视频数据量,需要对视频进行压缩,压缩过程即叫做编码。那么在播放的过程中需要把数字信号转化为模拟信号,这个过程就叫做视频解码。视频编码分为三个步骤:动态补偿,正余弦变换和熵(Entropy Encoding)。相应的视频解码就是视频编码的反过程。

视频编码和视频解码都是通过算法实现的,视频解码分为软解和硬解,前者是通过cpu调用程序实现解码算法,后者是解码视频被固化在gpu中,然后通过程序调用gpu来实现解码算法。硬解相对于软解的优势是把解码负担分担给了gpu,减小了cpu的使用量,从而提高了机器的性能。



硬解码的框架是这样的:





应用程序调用vaapi(连接应用程序和加速硬解驱动的接口)来使用硬件驱动从而使用硬件中的解码程序。最后通过解码程序对视频进行解码。

解码的过程是这样的:


http://shijianlin4724.blog.163.com/blog/static/130278781201272172545947/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: