在Windows 7/8 / Store C ++中播放内存中的压缩audio

Windows有这么多的API,这是荒谬的。 据说MediaFoundation是做到这一点的方法,但是我在MSDN文档中看到了很多'弃用',他们提供的示例仅用于从URL播放音乐。 我在内存中有一个压缩的audio文件(mp3,m4a等)。 现在我正在使用他们的CPlayer的例子。 ( https://msdn.microsoft.com/en-us/library/windows/desktop/bb970516(v=vs.85).aspx )。

有没有办法让MediaFoundation从内存加载源? 或者我必须解压缩在一个单独的线程,并将其馈送到XAudio2?

是的,媒体基金会有可能感谢IMFMediaSource接口。 在MSDN上有关于此主题的文章: 编写自定义媒体源

问候,