MFCreateSourceReaderFromMediaSource 函数 (mfreadwrite.h)

从媒体源创建源读取器。

语法

HRESULT MFCreateSourceReaderFromMediaSource(
  [in]  IMFMediaSource  *pMediaSource,
  [in]  IMFAttributes   *pAttributes,
  [out] IMFSourceReader **ppSourceReader
);

参数

[in] pMediaSource

指向媒体源的 IMFMediaSource 接口的指针。

[in] pAttributes

指向 IMFAttributes 接口的 指针。 可以使用此参数来配置源读取器。 有关详细信息,请参阅 源读取器属性。 此参数可以为 NULL。

[out] ppSourceReader

接收指向 IMFSourceReader 接口的 指针。 调用方必须释放接口。

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码 说明
S_OK
方法成功。
MF_E_DRM_UNSUPPORTED
源包含受保护的内容。

注解

在调用此函数之前,请调用 CoInitialize (Ex) MFStartup

默认情况下,当应用程序释放源读取器时,源读取器通过在媒体源上调用 IMFMediaSource::Shutdown 来关闭媒体源。 此时,应用程序不能再使用媒体源。

若要更改此默认行为,请在 pAttributes 参数中设置 MF_SOURCE_READER_DISCONNECT_MEDIASOURCE_ON_SHUTDOWN 属性。 如果此属性为 TRUE,则应用程序负责关闭媒体源。

使用源读取器时,请勿对媒体源调用以下任何方法:

如果安装了适用于 Windows Vista 的平台更新补充,则此函数在 Windows Vista 上可用。

要求

要求
最低受支持的客户端 适用于 Windows Vista 的 Windows 7、Windows Vista 和平台更新补充 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2 [桌面应用 |UWP 应用]
目标平台 Windows
标头 mfreadwrite.h
Library Mfreadwrite.lib
DLL Mfreadwrite.dll

另请参阅

媒体基础函数

源读取者