Partager via


Union KSDATAFORMAT (ks.h)

Cette rubrique décrit l’union KSDATAFORMAT.

Syntaxe

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

Membres

FormatSize

Spécifie la taille, en octets, de la structure KSDATAFORMAT. Cela doit être au moins taille de(KSDATAFORMAT), mais peut être plus grand pour des paramètres spécifiques de MajorFormat, SubFormatet Spécificateur. Pour plus d’informations, consultez les descriptions de ces membres.

Flags

Définissez des indicateurs sur KSDATAFORMAT_ATTRIBUTES (0x2) pour indiquer que le KSDATAFORMAT est suivi en mémoire par une KSMULTIPLE_ITEM de structures KSATTRIBUTE.

SampleSize

Spécifie la taille de l’échantillon des données, pour les tailles d’échantillon fixes ou zéro, si le format a une taille d’échantillon variable.

Reserved

Réservé à l’utilisation du système. Les pilotes doivent définir ce membre sur zéro.

MajorFormat

Spécifie le type de format général. Les formats de données actuellement pris en charge se trouvent dans les constantes symboliques KSDATAFORMAT_TYPE_XXX dans le fichier d’en-tête ksmedia.h inclus dans le Kit de pilotes Windows (WDK). Un flux de données qui n’a aucun format particulier ne doit utiliser KSDATAFORMAT_TYPE_STREAM (défini dans ks.h) comme valeur pour son MajorFormat. Pour plus d’informations sur ce membre, consultez Remarques.

SubFormat

Spécifie la sous-forme d’un type de format général. Les sous-formats de données actuellement pris en charge se trouvent dans les constantes symboliques KSDATAFORMAT_SUBTYPE_XXX dans le fichier d’en-tête ksmedia.h inclus dans le wdK. Les formats principaux qui ne prennent pas en charge les sous-formats doivent utiliser la valeur KSDATAFORMAT_SUBTYPE_NONE pour ce membre. Pour plus d’informations sur ce membre, consultez Remarques.

Specifier

Spécifie des informations de type de format de données supplémentaires pour un paramètre spécifique de MajorFormat et SubFormat. L’importance de ce champ est déterminée par le format principal (et la sous-forme, si le format principal prend en charge les sous-formats). Par exemple, spécificateur peut représenter un encodage particulier d’un sous-format, ou il peut être utilisé pour spécifier le type de structure de données qui suit KSDATAFORMAT en mémoire.

Les spécificateurs suivants (définis dans ks.h) sont d’usage général :

KSDATAFORMAT_SPECIFIER_NONE

Signifie qu’aucun spécificateur n’est spécifié. Utilisé pour les formats qui ne prennent pas en charge les spécificateurs.

KSDATAFORMAT_SPECIFIER_FILENAME

Indique qu’une chaîne Unicode terminée par null suit immédiatement la structure KSDATAFORMAT en mémoire.

KSDATAFORMAT_SPECIFIER_FILEHANDLE

Indique qu’un handle de fichier suit immédiatement KSDATAFORMAT en mémoire.

Alignment

Définit le membre LONGLONGAlignment.

Remarques

Au minimum, un format de données est spécifié par le MajorFormat, le SubFormat et les membres Spécificateur. Une famille de formats de données similaires peut partager les mêmes valeurs pour MajorFormat, SubFormatet Spécificateur. Dans ce cas, le format de données spécifique est distingué par des données supplémentaires qui suivent le spécificateur de membre en mémoire.

Pour obtenir la liste des combinaisons MajorFormat, SubFormatet Spécificateur, consultez catégories Stream et ses sous-rubriques.

Exigences

Exigence Valeur
d’en-tête ks.h (include Ks.h)

Voir aussi

catégories Stream