IMFSourceReaderEx::GetTransformForStream 方法 (mfreadwrite.h)

获取指向指定流的媒体基础转换(MFT)的指针。

Syntax

HRESULT GetTransformForStream(
  [in]  DWORD        dwStreamIndex,
  [in]  DWORD        dwTransformIndex,
  [out] GUID         *pGuidCategory,
  [out] IMFTransform **ppTransform
);

参数

[in] dwStreamIndex

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

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

[in] dwTransformIndex

要检索的 MFT 的从零开始的索引。

[out] pGuidCategory

接收指定 MFT 类别的 GUID。 有关可能值的列表,请参阅 MFT_CATEGORY

[out] ppTransform

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

返回值

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

返回代码 Description
S_OK
成功。
MF_E_INVALIDINDEX
dwTransformIndex 参数的范围不足。
MF_E_INVALIDSTREAMNUMBER
dwStreamIndex 参数无效。

注解

在将 MFT 插入到处理链中后,可以使用此方法配置 MFT。 不要使用 ppTransform 中返回的指针来设置 MFT 上的媒体类型或处理数据。 具体而言,调用以下 任何 IMFTransform 方法可能会产生意外的结果。

如果存在解码器,它将出现在索引位置零处。

为了避免丢失任何数据,应在调用此方法之前清空源读取器。 有关详细信息,请参阅 “清空数据管道”。

要求

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

另请参阅

IMFSourceReaderEx