MFT_INPUT_STREAM_INFO 结构 (mftransform.h)

包含有关媒体基础转换 (MFT) 的输入流的信息。 若要获取这些值,请调用 IMFTransform::GetInputStreamInfo

语法

typedef struct _MFT_INPUT_STREAM_INFO {
  LONGLONG hnsMaxLatency;
  DWORD    dwFlags;
  DWORD    cbSize;
  DWORD    cbMaxLookahead;
  DWORD    cbAlignment;
} MFT_INPUT_STREAM_INFO;

成员

hnsMaxLatency

输入样本与相应输出样本之间的最大时间,以 100 纳秒为单位。 例如,缓冲两个样本的 MFT(每个样本的持续时间为 1 秒)的最大延迟为 2 秒。 如果 MFT 始终将输入样本直接转换为不缓冲的输出样本,则延迟为零。

dwFlags

_MFT_INPUT_STREAM_INFO_FLAGS枚举中零个或多个标志的按位 OR

cbSize

每个输入缓冲区的最小大小(以字节为单位)。 如果大小可变或 MFT 不需要特定大小,则值为零。 对于未压缩的音频,该值应为音频帧大小,可从媒体类型中的 MF_MT_AUDIO_BLOCK_ALIGNMENT 属性获取。

cbMaxLookahead

MFT 保留用于执行查找的最大输入数据量(以字节为单位)。 Lookahead 是在处理数据之前在数据中向前查看的操作。 此值应为最坏情况的值。 如果 MFT 不保留前视缓冲区,则值为零。

cbAlignment

输入缓冲区所需的内存对齐方式。 如果 MFT 不需要特定的对齐方式,则值为零。

注解

在设置媒体类型之前,唯一应被视为有效的值是 dwFlags 成员中的MFT_INPUT_STREAM_REMOVABLE和MFT_INPUT_STREAM_OPTIONAL标志。

  • MFT_INPUT_STREAM_REMOVABLE标志指示可以删除流。
  • MFT_INPUT_STREAM_OPTIONAL标志指示流是可选的,不需要媒体类型。
在所有输入和输出流上设置媒体类型 (不包括可选流) 之后, GetInputStreamInfo 方法返回的所有值都有效。 如果设置不同的媒体类型,它们可能会更改。

要求

   
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
标头 mftransform.h

另请参阅

媒体基础结构

媒体基础转换