6

我正在开发一个需要使用 dxva2.0 解码 h264 视频的项目。我根据文档http://msdn.microsoft.com/en-us/library/windows/desktop/aa965245%28v=vs.85%29.aspx编写代码. 也就是说,我创建了一个IDirectXVideoDecoder的接口,然后调用dxva api“BeginFrame”、“Execute”和“EndFrame”。然后问题就出来了。当我在 Intel Core i5 CPU(GPU 是 CPU 内的 Intel 高清显卡)上执行我的程序时,一切正常。但是当我在英特尔 ATOM 处理器(使用英特尔 GMA3000 系列图形硬件)上执行它时,我无法得到正确的结果:一些视频帧被正确解码,而另一些则完全一团糟。我使用的数据是从另一台电脑发送过来的,数​​据可以直接填充到dxva的缓冲区中。在 h264 中,缓冲区是 DXVA2_PictureParameter、DXVA2_Bitstream、DXVA2_InverseQuantization 和 DXVA2_SliceControl。所以没有必要使用ffmpeg或ffdshow(而且ffdshow是gpl,我不能使用它)。这 ”

4

0 回答 0