windows – 如何使用硬件视频缩放器?
现代图形卡具有硬件视频缩放器,例如作为AMD Avivo,NVIDIA PureVideo或Intel ClearVideo的一部分.例如,AMD的
Avivo whitepaper说:
问题:如何从Windows程序中使用视频缩放器硬件? 假设已经存在解码的视频帧,例如在IDirect3DSurface9中,并且目标是使用硬件缩放器在屏幕上显示该视频帧.我想使用像Media Foundation或DirectShow这样的Windows API,而不是使用特定于供应商的API.我主要对1.5-3x左右的相当大的因素进行升级感兴趣. 第二个问题是,如何控制视频缩放器硬件参数? (例如,上面提到的多相滤波器中的滤波器系数) 编辑:赏金开始了.请提供在视频卡中使用视频缩放器硬件的任何方式的示例(这可能是特定于供应商的,或使用任何版本的DirectX / DirectShow / Media Foundation API). 编辑:更新:使用视频缩放器硬件的程序的一些示例:WinDVD,PowerDVD,madVR.我想知道如何完成他们的工作,即使用GPU的内置视频硬件缩放器,而不是使用D3D着色器和纹理采样器实现的缩放器.
要只访问硬件 – Direct2D(Direct3D可能是更好的选择)很好.但要访问视频缩放器,您需要使用DirectShow或Windows Media Foundation(我还没有真正使用过它).
AFAIK – “Resizer DMO”过滤器将访问正确的硬件并为您执行视频大小调整. Here是使用此过滤器的代码示例. 编辑:如果您正在使用MFT,Video Processor Filter也应该同样有效.如文档中所示,“视频处理器支持使用Microsoft Direct3D 11进行GPU加速视频处理.有关详细信息,请参阅MF_SA_D3D11_AWARE.” 另外 – 请参阅this有关硬件MFT属性的部分,尤其是MFT_ENUM_HARDWARE_URL_Attribute,它允许您检查MFT是否在硬件中实现. Note that DXVA与Media Foundation集成,并将其功能公开为MFT.因此,在硬件中实现的MFT最有可能使用底层硬件,并且是Windows本身使用的方法. 希望这可以帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 是否有Windows的Redis数据库查看器?
- 适用于Windows的Docker容器 – 桌面应用程序
- 基于Active Directory的SAML身份提供程序
- 如何在Windows 2003 Server上感染conficker后修复dhcp服务?
- windows-server-2008-r2 – 经常被锁定的用户帐户
- windows-server-2008-r2 – mscorsvw.exe(.NET运行时优化服
- 如何在Windows上为C程序设置适当的初始区域设置?
- windows-server-2008-r2 – 重新启动后,Windows 2008 R2会忘
- Windows界面编程第二篇 半透明窗体
- Windows通过schtasks设置开机自启动脚本