使用Direct3D 9曲面进行视频渲染可获得模糊效果

时间:2019-03-25 06:13:47

标签: directx-9 direct3d9

我使用DirectX 9渲染摄像机流,但显示的流有点模糊,有点像灰色的覆盖层。当我将结果与VLC进行比较时,我便知道了。

我通过ffmpeg获取YUV数组,并使用Direct3DSurface9锁定矩形进行内存复制。复制后,我得到后缓冲并拉伸。最后介绍一下。

我尝试了D3DMATERIAL9,但对我没有影响。如果我没记错,则将材质效果用于顶点。然后尝试SetDeviceGammaRamp不再起作用。

这就是我创建曲面的方式

<div style="display:flex;">
       <div>User ID</div>
       <img style="margin-right:3px; align-self:center;" src="correct.png" /> 
</div>  
<div><input type="text" name="fname"></div> 

编辑

我从摄像机获取的流是YUV格式,但没有将其转换为RGB。 YUV格式为16-235。因此,我的程序显示颜色模糊。我通过ffmpeg更改了BGRA格式。这解决了我的问题。

0 个答案:

没有答案