Compartir a través de


Estructura KSDATAFORMAT (ks.h)

La estructura KSDATAFORMAT es una estructura de longitud variable que describe un formato de datos.

Sintaxis

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

Miembros

FormatSize

Especifica el tamaño, en bytes, de la estructura KSDATAFORMAT. Debe ser al menos tamaño de(KSDATAFORMAT), pero puede ser mayor para configuraciones específicas de MajorFormat, SubFormaty Especificador. Consulte las descripciones de estos miembros para obtener más información.

Flags

Establezca Marcas en KSDATAFORMAT_ATTRIBUTES (0x2) para indicar que KSDATAFORMAT va seguido de la memoria por un KSMULTIPLE_ITEM de estructuras de KSATTRIBUTE.

SampleSize

Especifica el tamaño de muestra de los datos, para tamaños fijos de muestra o cero, si el formato tiene un tamaño de muestra variable.

Reserved

Reservado para uso del sistema. Los controladores deben establecer este miembro en cero.

MajorFormat

Especifica el tipo de formato general. Los formatos de datos que se admiten actualmente se pueden encontrar en las constantes simbólicas KSDATAFORMAT_TYPE_XXX en el ksmedia.h archivo de encabezado que se incluye en el Kit de controladores de Windows (WDK). Un flujo de datos que no tenga ningún formato determinado debe usar KSDATAFORMAT_TYPE_STREAM (definido en ks.h) como valor de su MajorFormat. Para obtener más información sobre este miembro, vea Comentarios.

SubFormat

Especifica el subformato de un tipo de formato general. Los subformatos de datos que se admiten actualmente se pueden encontrar en la KSDATAFORMAT_SUBTYPE_XXX constantes simbólicas de la ksmedia.h archivo de encabezado que se incluye en WDK. Los formatos principales que no admiten subformatos deben usar el valor KSDATAFORMAT_SUBTYPE_NONE para este miembro. Para obtener más información sobre este miembro, vea Comentarios.

Specifier

Especifica información adicional de tipo de formato de datos para una configuración específica de MajorFormat y SubFormat. La importancia de este campo viene determinada por el formato principal (y subformato, si el formato principal admite subformatos). Por ejemplo, especificador puede representar una codificación determinada de un subformato o puede usarse para especificar qué tipo de estructura de datos sigue KSDATAFORMAT en memoria.

Los siguientes especificadores (definidos en ks.h) son de uso general:

KSDATAFORMAT_SPECIFIER_NONE

Significa que no hay ningún especificador. Se usa para formatos que no admiten especificadores.

KSDATAFORMAT_SPECIFIER_FILENAME

Indica que una cadena Unicode terminada en null sigue inmediatamente la estructura KSDATAFORMAT en memoria.

KSDATAFORMAT_SPECIFIER_FILEHANDLE

Indica que un identificador de archivo sigue inmediatamente A KSDATAFORMAT en la memoria.

Observaciones

Como mínimo, el MajorFormatespecifica un formato de datos , el subformato dey los miembros del especificador de . Una familia de formatos de datos similares puede compartir los mismos valores para MajorFormat, SubFormaty Especificador. En ese caso, el formato de datos específico se distingue por datos adicionales que siguen al especificador de miembro en memoria.

Para obtener una lista de majorFormat, subformatoy combinaciones de especificador, vea categorías de flujo y sus subtemas.

Requisitos

Requisito Valor
encabezado de ks.h (incluya Ks.h)

Consulte también

categorías de flujo de