KSDATAFORMAT union (ks.h)

本主题介绍 KSDATAFORMAT 联合。

语法

typedef union {
  struct {
    ULONG FormatSize;
    ULONG Flags;
    ULONG SampleSize;
    ULONG Reserved;
    GUID  MajorFormat;
    GUID  SubFormat;
    GUID  Specifier;
  };
  LONGLONG Alignment;
} KSDATAFORMAT, *PKSDATAFORMAT, KSDATARANGE, *PKSDATARANGE;

成员

FormatSize

指定 KSDATAFORMAT 结构的大小(以字节为单位)。 此大小必须至少为 (KSDATAFORMAT) ,但对于 MajorFormat、SubFormat说明符的特定设置,可以更大。 有关详细信息,请参阅这些成员的说明。

Flags

将 标志设置为 KSDATAFORMAT_ATTRIBUTES (0x2) 以指示 KSDATAFORMAT 在内存中后跟 KSATTRIBUTE结构的KSMULTIPLE_ITEM

SampleSize

指定数据的样本大小(对于固定样本大小),如果格式具有可变样本大小,则指定零。

Reserved

预留给系统使用。 驱动程序必须将此成员设置为零。

MajorFormat

指定常规格式类型。 可以在 Windows 驱动程序工具包 (WDK) 中包含的 ksmedia.h 头文件中的 KSDATAFORMAT_TYPE_XXX 符号常量中找到当前支持的数据格式。 没有特定格式的数据流应使用 ks.h) 中定义的KSDATAFORMAT_TYPE_STREAM (作为其 MajorFormat 的值。 有关此成员的详细信息,请参阅 备注

SubFormat

指定常规格式类型的子格式。 可以在 WDK 中包含的 ksmedia.h 头文件中的 KSDATAFORMAT_SUBTYPE_XXX符号常量中找到当前支持的数据子格式。 不支持子格式的主要格式应为此成员使用 KSDATAFORMAT_SUBTYPE_NONE 值。 有关此成员的详细信息,请参阅 备注

Specifier

指定 特定设置 MajorFormat 和 SubFormat 的其他数据 格式类型信息。 如果主要格式支持子格式) ,则此字段的重要性取决于主要格式 (和子格式。 例如, 说明符 可以表示子格式的特定编码,或者可用于指定内存中遵循 KSDATAFORMAT 的数据结构类型。

ks.h) 中定义的以下说明符 (通用:

KSDATAFORMAT_SPECIFIER_NONE

代表无说明符。 用于不支持说明符的格式。

KSDATAFORMAT_SPECIFIER_FILENAME

指示以 null 结尾的 Unicode 字符串紧跟内存中的 KSDATAFORMAT 结构。

KSDATAFORMAT_SPECIFIER_FILEHANDLE

指示文件句柄紧跟在内存中的 KSDATAFORMAT 后面。

Alignment

定义 LONGLONG 成员 对齐方式

注解

数据格式至少由 MajorFormatSubFormat说明符 成员指定。 一系列类似的数据格式可以为 MajorFormatSubFormat说明符共享相同的值。 在这种情况下,特定数据格式由内存中 说明符 成员后面的其他数据进行区分。

有关 MajorFormatSubFormat说明符组合的列表,请参阅Stream类别及其子主题。

要求

要求
Header ks.h (包括 Ks.h)

另请参阅

Stream类别