硬件加速简要

来源:互联网 发布:网络备案查询 编辑:程序博客网 时间:2024/05/23 19:19

        简而言之,硬件加速就是利用硬件模块来替代软件算法以充分利用硬件所固有的快速特性。计算机显示使用硬件加速会快些,但会在投影仪或截图时发现显示区是黑的,这时就要关闭硬件加速(硬件加速反方向操作)。

        硬件解码生效的时候,系统是怎么运转的呢?现在我们有三个处理器,CPU、GPU和APU(不是加速处理器是声音处理器)。他们通过PCI/AGP/PCIE总线交换数据。

  1.CPU从文件系统里读出原始数据(DirectSHow的源滤镜),分离出压缩的视频数据(分离器)。放在系统内存中。GPU、APU发呆

  2.CPU把压缩音视频数据交给GPU、APU, 这时总线上开始忙了,压缩数据从系统内存拷贝到显卡上的显存里和声卡上的声存里(如果有的话)。

  3.CPU要求GPU、APU开始硬件解码,现在CPU进入发呆期,GPU、APU开始忙。当然CPU会定期查询一下GPU、APU忙的怎么样了。

  4.GPU、APU开始用自己的电路解码视频数据(已经在显、声存里了),解压后的数据还是放在显声存里面。CPU继续发呆。

  5.音视频数据刚解码完成以后还不能立刻拿去播放,因为还需要后期处理,如deinterlace, 3:2pulldown,多普勒效应,等等。GPU、APU再用自己的后期处理电路来进行处理。CPU还是发呆。

  6.后期处理以后的未压缩数据拿去播放, GPU再开始忙视频的缩放,亮度,gamma等事情。CPU还是闲。

  7.GPU、APU终于忙完了,下面的视频数据在哪里?通知CPU,GPU、APU先歇会。 CPU又开始忙了,回到第1步。

 

原创粉丝点击