微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 IMFMediaType 获取编解码器名称

如何解决从 IMFMediaType 获取编解码器名称

是否可以从 IMFMediaType 获取编解码器名称?在我的代码中,我想记录与 IMFSourceReader 中特定流索引相对应的音频或视频编解码器。从我从 IMFSourceReader::GetCurrentMediaType() 获得的 IMFMediaType 中,我获得了比特率、帧大小和代码用来成功播放媒体的所有其他参数,但我不知道如何获得编解码器名称。我查看了 https://docs.microsoft.com/en-us/windows/win32/medfound/media-foundation-attributes ,但没有看到任何有用的东西。

解决方法

Media Foundation Media Types 不携带编解码器名称信息。与编解码器标识相对应的典型通用属性是 MF_MT_MAJOR_TYPE attribute,这可能没有用,因为您已经知道您持有的视频或音频媒体类型。第二个是 MF_MT_SUBTYPE attribute,它基本上描述了一般数据的编码。您应该从那里自己将 GUID 值转换为一些用户友好的“编解码器名称”。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。