首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >确定MFT是GPU还是CPU?

确定MFT是GPU还是CPU?
EN

Stack Overflow用户
提问于 2021-09-28 11:03:49
回答 1查看 214关注 0票数 1

我可以用MFT_FRIENDLY_NAME_Attribute获取MFT的名称,并检查它是硬件还是软件MFT_ENUM_FLAG_HARDWARE,如何检查编码器是基于CPU还是基于GPU?

例如英特尔QuickSync是CPU,NVIDIA H.264编码器MFT是GPU,等等

编码器是通过MFTEnumEx(MFT_CATEGORY_VIDEO_ENCODER, ...);获取的,它提供了一个IMFActivate数组,从那里我可以得到MFT标志和编码器的GUID。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-28 11:13:01

如何检查编码器是基于CPU还是基于GPU

MFT并不表示它们是基于CPU还是基于GPU。他们不必这样做,但这也没有什么意义。

您已经发现的MFT_ENUM_FLAG_HARDWARE标志已经告诉您您想要的信息。

MFT_ENUM_FLAG_HARDWARE

MFT使用AVStream驱动程序或基于GPU的代理MFT执行基于硬件的数据处理.此类别中的MFT总是异步处理数据。

这个标志告诉在这个编码器后面没有CPU实现,它是一些硬件来处理编码。具体是什么硬件?通常情况下是GPU。

没有带有MFT_ENUM_FLAG_HARDWARE的AMD、Intel或编码器,同时也没有“基于CPU的编码器”(如果H.264/AVC或H.265/HEVC有问题,则根本不存在来自上述供应商的媒体基金会格式因素中的CPU/软件编码器)。

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

https://stackoverflow.com/questions/69360543

复制
相关文章

相似问题

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