首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何判断DXVA解码器是否已退回到软件解码

如何判断DXVA解码器是否已退回到软件解码
EN

Stack Overflow用户
提问于 2015-03-19 05:36:10
回答 2查看 824关注 0票数 1

来自https://msdn.microsoft.com/en-us/library/windows/desktop/dd797815%28v=vs.85%29.aspx

在约束中,您可以看到“DXVA加速的最大保证分辨率是1920×1088像素;在更高的分辨率下,解码是用DXVA完成的,如果它得到底层硬件的支持,则使用软件进行解码。”

有没有一种方法可以检测到解码是在软件中完成的?

我们有问题的AMD图形控制器时,试图解码4K H264视频。

我们知道硬件不支持4K解码,理论上它应该回到软件上。然而,我们发现,不管它应该做什么,我们会得到很多损坏或黑色的帧。

我希望我们能够检测到DXVA是否已经退回到SW解码,在这种情况下,我们根本不尝试使用DXVA,而是使用完整的软件路径。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-13 18:14:48

H264 MFT不公开它是否使用DXVA进行解码。

它使用IDirectXVideoDecoderService::CreateVideoDecoder创建DXVA解码器,因此您可以手动调用该函数,查看它是否成功。

我在Mozilla bug 1193547中添加了对此的完整解释(和apitrace )。

票数 1
EN

Stack Overflow用户

发布于 2015-03-19 08:50:27

您是否尝试过通过mftrace运行应用程序(包括在Windows中)?mftrace输出非常冗长,通常会让您知道在编码过程中使用的是哪种MFT。当硬件编码可用时,您可能会发现正在使用的不同的MFT。

例如,当系统硬件支持H264编码时,将使用作为硬件编码器的Intel,而不是标准的Microsoft。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29137875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档