KSDATAFORMAT 共用体 (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 構造体のサイズをバイト単位で指定します。 これは、少なくとも sizeof(KSDATAFORMAT) である必要がありますが、MajorFormat、SubFormatおよび Specifier の特定の設定では大きくすることができます。 詳細については、これらのメンバーの説明を参照してください。

Flags

KSDATAFORMAT の後に KSATTRIBUTE 構造体のKSMULTIPLE_ITEMが続く場合は、フラグを KSDATAFORMAT_ATTRIBUTES (0x2) に設定します。

SampleSize

固定サンプル サイズのデータのサンプル サイズを指定します。形式に可変のサンプル サイズがある場合は 0 を指定します。

Reserved

システムで使用するために予約されています。 ドライバーは、このメンバーを 0 に設定する必要があります。

MajorFormat

一般的な書式の種類を指定します。 現在サポートされているデータ形式は、Windows Driver Kit (WDK) に含まれている ksmedia.h ヘッダー ファイルのKSDATAFORMAT_TYPE_XXXシンボリック定数にあります。 特定の形式を持たないデータ ストリームでは、majorFormat の値として KSDATAFORMAT_TYPE_STREAM (ks.h で定義) を使用する必要があります。 このメンバーの詳細については、「 解説」を参照してください。

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 メンバーの Alignment を定義します

注釈

少なくとも、データ形式は MajorFormatSubFormat、および Specifier メンバーによって指定されます。 同様のデータ形式のファミリは、 MajorFormatSubFormat、および Specifier で同じ値を共有できます。 その場合、特定のデータ形式は、メモリ内の 指定子 メンバーに続く追加のデータによって区別されます。

MajorFormatSubFormat、および Specifier の組み合わせの一覧については、「Streamカテゴリとそのサブトピック」を参照してください。

要件

要件
Header ks.h (Ks.h を含む)

こちらもご覧ください

Streamカテゴリ