IMFSourceResolver::CreateObjectFromByteStream 方法 (mfidl.h)

从字节流创建媒体源。 此方法是同步方法。

语法

HRESULT CreateObjectFromByteStream(
  [in]  IMFByteStream  *pByteStream,
  [in]  LPCWSTR        pwszURL,
  [in]  DWORD          dwFlags,
  [in]  IPropertyStore *pProps,
  [out] MF_OBJECT_TYPE *pObjectType,
  [out] IUnknown       **ppObject
);

parameters

[in] pByteStream

指向字节流的 IMFByteStream 接口的指针。

[in] pwszURL

包含字节流的 URL 的以 Null 结尾的字符串。 URL 是可选的,可以为 NULL。 有关更多信息,请参见备注。

[in] dwFlags

标志的按位 OR 。 请参阅 源冲突解决程序标志

[in] pProps

指向属性 存储的 IPropertyStore 接口的指针。 方法将属性存储传递给字节流处理程序。 字节流处理程序可以使用属性存储来配置媒体源。 此参数可以为 NULL。 有关详细信息,请参阅 配置媒体源

[out] pObjectType

接收 MF_OBJECT_TYPE 枚举的成员,指定所创建的 对象的类型。

[out] ppObject

接收指向媒体源的 IUnknown 接口的指针。 调用方必须释放接口。

返回值

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

返回代码 说明
S_OK
方法成功。
MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS
dwFlags 参数包含互斥标志。
MF_E_UNSUPPORTED_BYTESTREAM_TYPE
不支持此字节流。

注解

dwFlags 参数必须包含 MF_RESOLUTION_MEDIASOURCE 标志,并且不应包含 MF_RESOLUTION_BYTESTREAM 标志。

源解析程序尝试根据 URL 的文件扩展名或字节流的 MIME 类型 (或两者) 查找字节流的一个或多个字节流处理程序。 URL 在可选的 pwszURL 参数中指定,可以在字节流的 MF_BYTESTREAM_CONTENT_TYPE 属性中指定 MIME 类型。 字节流处理程序按文件扩展名或 MIME 类型注册,或按两者注册,如 方案处理程序和 Byte-Stream 处理程序中所述。 如果可能,调用方应 (至少指定以下值中的一个) :

  • pwszURL 参数中指定 URL。
  • 通过设置字节流上的 MF_BYTESTREAM_CONTENT_TYPE 属性来指定 MIME 类型。 (创建字节流时可能已设置此属性,具体取决于创建字节流的方式。)
注意 无法远程调用此方法。
 

要求

   
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
目标平台 Windows
标头 mfidl.h
Library Mfuuid.lib

另请参阅

IMFSourceResolver

源冲突解决程序