Media Foundation IMFMediaSource :: CreatePresentationDescriptor调用永远不会结束

时间:2012-11-08 12:32:45

标签: audio com directx ms-media-foundation

我正在尝试使用Media Foundation播放mp3文件,我在使用PresentationDesctiptor方法获取CreatePresentationDescriptor时遇到问题

我在做什么:

  • 使用MFStartup
  • 启动MF
  • 使用MFCreateMediaSession
  • 创建会话
  • 使用MFCreateSourceResolver
  • 创建SourceResolver
  • 使用SourceResolver中的CreateObjectFromURL
  • 创建MediaSource
  • 使用MFCreateTopology
  • 创建拓扑
  • 尝试使用MediaSource
  • 中的CreatePresentationDescriptor创建PresentationDescriptor

当我呼叫CreatePresentationDescriptor时,没有错误/异常发生,它只是站在那里,什么也不做。当我暂停Visual Strudio时,它表示程序仍在等待方法完成。我做错了什么?

1 个答案:

答案 0 :(得分:0)

我没有提到我使用C#(不认为这是相关的)

问题在于,在C#中导入com接口时,您需要导入所有接口方法,而不仅仅是那些被调用的接口。某些方法可以调用未导入的方法并导致未向Visual Strudio调试器报告的访问冲突,因此看起来方法永远不会完成invokink。