IMFSourceReader::GetNativeMediaType 方法(mfreadwrite.h)

获取媒体源本机支持的格式。

Syntax

HRESULT GetNativeMediaType(
  [in]  DWORD        dwStreamIndex,
  [in]  DWORD        dwMediaTypeIndex,
  [out] IMFMediaType **ppMediaType
);

参数

[in] dwStreamIndex

指定要查询的流。 该值可以是以下任一值。

价值 Meaning
0–0xFFFFFFFB
流的从零开始的索引。
MF_SOURCE_READER_FIRST_VIDEO_STREAM
0xFFFFFFFC
第一个视频流。
MF_SOURCE_READER_FIRST_AUDIO_STREAM
0xFFFFFFFD
第一个音频流。

[in] dwMediaTypeIndex

指定要查询的媒体类型。 该值可以是以下任一值。

价值 Meaning
0–0xFFFFFFFE
媒体类型的从零开始的索引
MF_SOURCE_READER_CURRENT_TYPE_INDEX
0xFFFFFFFF
当前的本机媒体类型。

[out] ppMediaType

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

返回值

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

返回代码 Description
S_OK
方法成功。
MF_E_INVALIDSTREAMNUMBER
dwStreamIndex 参数无效。
MF_E_NO_MORE_TYPES
dwMediaTypeIndex 参数的范围不足。

注解

此方法查询基础媒体源的本机输出格式。 可能,每个源流可以生成多个输出格式。 使用 dwMediaTypeIndex 参数循环访问可用格式。 通常,文件源每个流只提供一种格式,但捕获设备可能提供多种格式。

该方法返回媒体类型的副本,因此可以安全地修改 ppMediaType 参数中接收的对象。

若要设置流的输出类型,请调用 IMFSourceReader::SetCurrentMediaType 方法。

如果安装了 Windows Vista 平台更新补充,则 Windows Vista 上提供了此接口。

要求

Requirement 价值
最低支持的客户端 适用于 Windows Vista 的 Windows 7、Windows Vista 和平台更新补充 [桌面应用 |UWP 应用]
支持的最低服务器 Windows Server 2008 R2 [桌面应用 |UWP 应用]
目标平台 Windows操作系统
Header mfreadwrite.h

另请参阅

IMFSourceReader

源读取器