基于DXVA的多路H
264高清视频解码器的实现1002-8692(2011)18-0030-04苏俊峰,朱秀昌南京邮电大学江苏省图像处理和通信重点实验室,江苏南京210003[摘要]设计了一种基于微软DXVA接口的H
264多路高清视频解码器
定义了代表解码器和GPU的数据结构,通过调用定义的解码函数接口,可使解码器用在各种视频播放器中
实验证明,所设计的解码器在进行多路高清解码对无论解码速度还是CPU的占用率都比传统的软件解码器有很大的性能提升
DXVA;H
264;图形处理器;多路解码TN919
81AImplementationofMulti-channelH
264HD-DecoderBasedonDXVASUJunfengZHUXiuchang万方数据31万方数据32万方数据Parts&applicatioI_n
器件与应用l创建一个硬件解码器对象,并使所关联的D3Dmanager数据结构中的解码器的计数加1
3)HRESULTDxvaDecodeFrame(DXVADecoderH264木pDecoder,NALU__t*pH264NALU,RECT*pRect)
函数是解码器的解码接口,主要有3个参数,第1个是代表解码器,pH264NALU是H.264码流中的一个NALU单元,pRect是代表该解码器解码后的数据在显示窗1:3的显示区域
4)HRESULTDestroyDxvaDecoder(DXVADecoderH264*pDecoder)
函数的功能是释放解码设备并使所关联的D3Dmanager数据结构中的解码器计数减1
5)HRESULTDestroyD3DManager(D3DManager木pManager)
函数的功能是释放显卡设备并销毁所创建的显示窗口,该函数在销毁之前会检测其关联的解码个数是否为0,如果不为0,则该函数什么也不执行并立即返回,