UWP开发细节记录:IStream 和 IRandomAccessStream^ 以及 IMFByteStream 互转

IStream 和 IRandomAccessStream^ 互转

  IRandomAccessStream^ --> IStream:  CreateStreamOverRandomAccessStream

  IStream --> IRandomAccessStream^:  CreateRandomAccessStreamOverStream

IStream 和 IMFByteStream 互转

  IStream --> IMFByteStream:  MFCreateMFByteStreamOnStream

  IMFByteStream --> IStream:  MFCreateStreamOnMFByteStream

IMFByteStream 和 IRandomAccessStream^ 互转

  IRandomAccessStream^ --> IMFByteStream:  MFCreateMFByteStreamOnStreamEx

  IMFByteStream --> IRandomAccessStream^:  MFCreateStreamOnMFByteStreamEx

 另:

  MFCreateMFByteStreamOnStreamEx 的MSDN文档有错误,第一个参数应该是 IUnknown* 而非 IUnknown ;

  IRandomAccessStream^ 转为 IUnknown* 使用 reinterpret_cast<IUnknown *>() 或者 reinterpret_cast<IInspectable*>() 。

 

你可能感兴趣的:(UWP开发细节记录:IStream 和 IRandomAccessStream^ 以及 IMFByteStream 互转)