IMFByteStream不可写

时间:2013-12-28 23:46:15

标签: c# c++ ms-media-foundation

我从任何System.IO.Stream开始,就像FileStream一样。 FileStream是可写的和可读的。 我正在使用IStream的基本实现将System.IO.Stream转换为IStream。 有关确切的代码,请查看以下内容:http://cscore.codeplex.com/SourceControl/latest#CSCore/Win32/ComStream.cs

IStream实现应支持编写。现在我想将IStream转换为IMFByteStream以将其与mediafoundation结合使用。

我使用MFCreateMFByteStreamOnStream创建IMFByteStream。 除了一件重要的事情之外,一切都很好: 如果我拨打IMFByteStream::GetCapabilities,我可以看到IMFByteStream只支持阅读和搜索。但我想用它来编码,所以我需要写作。

那么如何才能获得可写的IMFByteStream?

还有一个奇怪的事情:MP3编码器不关心,IMFByteStream是不可写的,编码工作正常(它实际上将数据写入IMFByteStream,将其写入IStream,将其写入FileStream,但它告诉我它不可写。)

0 个答案:

没有答案