IMFCaptureSource::GetAvailableDeviceMediaType 方法 (mfcaptureengine.h)

获取一个捕获流支持的格式。

Syntax

HRESULT GetAvailableDeviceMediaType(
  [in] DWORD        dwSourceStreamIndex,
  [in] DWORD        dwMediaTypeIndex,
  [in] IMFMediaType **ppMediaType
);

参数

[in] dwSourceStreamIndex

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

价值 Meaning
0–0xFFFFFFFB
流的从零开始的索引。 若要获取流数,请调用 IMFCaptureSource::GetDeviceStreamCount
MF_CAPTURE_ENGINE_FIRST_SOURCE_PHOTO_STREAM
0xFFFFFFFB
第一个图像流。
MF_CAPTURE_ENGINE_FIRST_SOURCE_VIDEO_STREAM
0xFFFFFFFC
第一个视频流。
MF_CAPTURE_ENGINE_FIRST_SOURCE_AUDIO_STREAM
0xFFFFFFFD
第一个音频流。

[in] dwMediaTypeIndex

要检索的媒体类型的从零开始的索引。

[in] ppMediaType

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

返回值

此方法可以返回其中一个值。

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

注解

若要枚举流上的所有可用格式,请循环调用此方法,同时递增 dwMediaTypeIndex,直到该方法返回 MF_E_NO_MORE_TYPES

某些相机可能支持一系列帧速率。 最小和最大帧速率存储在 媒体类型的MF_MT_FRAME_RATE_RANGE_MINMF_MT_FRAME_RATE_RANGE_MAX 属性中。

要求

Requirement 价值
最低支持的客户端 Windows 8 [仅限桌面应用]
支持的最低服务器 Windows Server 2012 [仅限桌面应用]
目标平台 Windows操作系统
Header mfcaptureengine.h

另请参阅

IMFCaptureSource