IMFByteStream QueryInterface获取IMFAttributes

时间:2014-11-27 06:15:10

标签: video c++-cx ms-media-foundation

我想使用IMFSourceResolver打开视频文件,但它返回了不支持给定网址的字节流类型。我所做的是打开视频以获取IRandomAccessStream,将其转换为IMFByteStream并使用CreateObjectFromByteStream()获取IMFMediaSource

根据此链接CreateObjectFromByteStream,它表示是否返回MF_E_UNSUPPORTED_BYTESTREAM_TYPE通过在字节流上设置MF_BYTESTREAM_CONTENT_TYPE属性来指定MIME类型。 MF_BYTESTREAM_CONTENT_TYPE的此链接表示要获取属性值,请查询IMFAttributes接口的字节流对象。但我无法弄清楚如何做到这一点。

是否可以从IMFAttribute获取IMFByteStream接口?如果是这样的话?值MF_BYTESTREAM_CONTENT_TYPE应该是什么?

1 个答案:

答案 0 :(得分:0)

来自MSDN(http://msdn.microsoft.com/en-us/library/windows/desktop/aa374773%28v=vs.85%29.aspx

  

要找出答案   字节流是否支持属性,查询字节流   IMFAttributes接口的对象。

根据此信息,某些字节流支持 IMFAttributes ,而其他字节流则不支持。如果您在 IMFAttributes 中查询 IMFByteStream 并返回 E_NOINTERFACE ,则表示您的