IMFDeviceTransform::GetInputAvailableType 方法 (mftransform.h)

GetInputAvailableType 方法获取此媒体基础转换上的输入流的可用媒体类型 (MFT) 。

语法

HRESULT GetInputAvailableType(
  [in]  DWORD        dwInputStreamID,
  [in]  DWORD        dwTypeIndex,
  [out] IMFMediaType **pMediaType
);

parameters

[in] dwInputStreamID

输入流标识符。 若要获取流标识符列表,请调用 IMFDeviceTransform::GetStreamID

[in] dwTypeIndex

要检索的媒体类型的索引。 媒体类型从零开始编制索引,并按首选项的大致顺序返回。

[out] pMediaType

接收指向 IMFMediaType 接口的指针。

返回值

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

返回代码 说明
S_OK
初始化成功
MF_E_INVALIDREQUEST
设备 MFT 目前无法支持该请求。
MF_E_INVALIDSTREAMNUMBER
流 ID 无效。
MF_E_NO_MORE_TYPES
指定的索引没有可用的媒体类型。

注解

MFT 为每个输入流定义可用媒体类型的列表,并按首选项对其进行排序。 此方法枚举输入流的可用媒体类型。 若要枚举可用类型,请递增 dwTypeIndex ,直到方法返回 MF_E_NO_MORE_TYPES

实现说明

如果 MFT 在内部存储媒体类型,则 MFT 应返回媒体类型的克隆,而不是指向原始类型的指针。 否则,调用方可能会修改类型并更改 MFT 的内部状态。

要求

   
最低受支持的客户端 Windows 10 版本 1703
目标平台 Windows
标头 mftransform.h

另请参阅

IMFDeviceTransform