硬件加速播放的工作原理

互联网 | 编辑: 2005-08-05 00:00:00 一键看全文

DXVA是视频硬件加速的统称,不仅仅是视频数据解码(包括H261,MPEG1,MPEG2,H263,MPEG4), 还有Alpha blending, Picture resampling等。但对于播放时CPU利用率影响最大的,则是视频解码,尤其是HDTV的解码。

硬件加速播放的工作原理2

    了解了这样的步骤,我们看什么时候硬件解码会失败。
    1. GPU自己没办法独立搞定解码,比如太老的显卡,显存太少,或者象GF2MX,GF4TI这种太监(MC和IDCT只支持一个)。
    2. GPU的视频后期处理太差劲,你要找其他软件来做,这个对于发烧友是很常见的情况,比如放DVD加ffdshow锐化倍线。ffdshow只能在系统内存里工作,它没办法把手伸到显卡显存上,那么硬件解码只好让位给软件解码。
    3。非常常见的一个情况,就是用vobsub加字幕。vobsub滤镜是加在解码器之后,渲染器之前的。它怎么把字幕放到图像上去? 原始图像进来,它修改原始图像,把字幕的图案画上去,再送给后面的渲染器(或者别的后期处理滤镜)。 vobsub同样只能在系统内存里工作,ok, 解码也要软件了。
vobsub不能用,那字幕要怎么加?所幸渲染器提供了混合模式,就是把几种视频数据揉在一起,这些数据可以是在系统内存中(软件解码或软件生成),也可以是在显卡显存中(硬件解码)。最大的好处是各种视频数据可以独立生成,不会互相牵制。可以硬件解压的用硬件解压,可以软件生存的用软件生存。(类似电路里串联和并联的关系)、 哪些软件呢?比如MPC, KMP, BSPlayer, 他们自带字幕引擎。而ZoomPlayer借助于vobsub生成字幕。只能用软解压。

    Media Player Classic(MPC),不要把它和暴风影音等套件混起来。MPC是一个播放器内带了一些滤镜和字幕工具,全部是Gabest这个牛人开发的Opensource软件,暴风里除了MPC以外还有一堆其他公司的滤镜,包括vobsub, 理论上可能有版权问题。vobsub虽然也是gabest开发的,但它显示字幕的工作方式和MPC里的不同。vobsub在视频数据交给渲染器之前插入字幕, MPC把视频数据和字幕分开,一起交给渲染器。 如果套件里包涵vobsub, 建议删除之,我不确定禁用vobsub的效果如何。【alban911确认,禁用vobsub没有问题】

    KMP也是一个较常用的播放器,值得主要的是,除了自带字幕引擎以外,它内部自带了一个视频后期处理引擎,如果选画质模式等,这个引擎会生效。同样道理,这个引擎只能在系统内存里玩,那么硬件解码只能放弃。必须要选择极速/高速模式,禁用这个引擎,或者在系统选项里明确禁用此引擎,才能允许硬件解码工作。

 

提示:试试键盘 “← →” 可以实现快速翻页 

一键看全文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑