Compartir a través de


Estructura AVISTREAMINFOW (vfw.h)

La estructura AVISTREAMINFO contiene información de una sola secuencia.

Sintaxis

typedef struct _AVISTREAMINFOW {
  DWORD fccType;
  DWORD fccHandler;
  DWORD dwFlags;
  DWORD dwCaps;
  WORD  wPriority;
  WORD  wLanguage;
  DWORD dwScale;
  DWORD dwRate;
  DWORD dwStart;
  DWORD dwLength;
  DWORD dwInitialFrames;
  DWORD dwSuggestedBufferSize;
  DWORD dwQuality;
  DWORD dwSampleSize;
  RECT  rcFrame;
  DWORD dwEditCount;
  DWORD dwFormatChangeCount;
  WCHAR szName[64];
} AVISTREAMINFOW, *LPAVISTREAMINFOW;

Miembros

fccType

Código de cuatro caracteres que indica el tipo de secuencia. Se han definido las siguientes constantes para los datos que se encuentran habitualmente en secuencias AVI:

Constante Descripción
streamtypeAUDIO
Indica una secuencia de audio.
streamtypeMIDI
Indica una secuencia MIDI.
streamtypeTEXT
Indica una secuencia de texto.
streamtypeVIDEO
Indica una secuencia de vídeo.

fccHandler

Código de cuatro caracteres del controlador de compresor que comprimirá esta secuencia de vídeo cuando se guarde (por ejemplo, mmioFOURCC ('M','S','V','C')). Este miembro no se usa para secuencias de audio.

dwFlags

Marcas aplicables para la secuencia. Los bits de la palabra de orden superior de estas marcas son específicos del tipo de datos contenidos en la secuencia. Se definen las marcas siguientes:

Nombre Descripción
AVISTREAMINFO_DISABLED
Indica que esta secuencia se debe representar cuando el usuario la habilite explícitamente.
AVISTREAMINFO_FORMATCHANGES
Indica que esta secuencia de vídeo contiene cambios de paleta. Esta marca advierte al software de reproducción que tendrá que animar la paleta.

dwCaps

Marcas de funcionalidad; actualmente sin usar.

wPriority

Prioridad de la secuencia.

wLanguage

Idioma de la secuencia.

dwScale

Escala de tiempo aplicable a la secuencia. La división de dwRate por dwScale proporciona la velocidad de reproducción en el número de muestras por segundo.

En el caso de las secuencias de vídeo, esta velocidad debe ser la velocidad de fotogramas. En el caso de las secuencias de audio, esta velocidad debe corresponder al tamaño del bloque de audio (el miembro nBlockAlign de la estructura WAVEFORMAT o PCMWAVEFORMAT ), que para el audio PCM (Modulación de código de pulso) se reduce a la frecuencia de muestreo.

dwRate

Velocidad en formato entero. Para obtener la tasa en muestras por segundo, divida este valor por el valor de dwScale.

dwStart

Número de ejemplo del primer fotograma del archivo AVI. Las unidades se definen mediante dwRate y dwScale. Normalmente, es cero, pero puede especificar un tiempo de retraso para una secuencia que no se inicia simultáneamente con el archivo.

La versión 1.0 de las herramientas avi no admite una hora de inicio distinta de cero.

dwLength

Longitud de esta secuencia. Las unidades se definen mediante dwRate y dwScale.

dwInitialFrames

Asimetría de audio. Este miembro especifica cuánto se sesgarán los datos de audio por delante de los fotogramas de vídeo en archivos intercalados. Normalmente, esto es de aproximadamente 0,75 segundos.

dwSuggestedBufferSize

Tamaño de búfer recomendado, en bytes, para la secuencia. Normalmente, este miembro contiene un valor correspondiente al fragmento más grande de la secuencia. El uso del tamaño correcto del búfer hace que la reproducción sea más eficaz. Use cero si no conoce el tamaño correcto del búfer.

dwQuality

Indicador de calidad de los datos de vídeo en la secuencia. La calidad se representa como un número entre 0 y 10 000. En el caso de los datos comprimidos, normalmente representa el valor del parámetro de calidad pasado al software de compresión. Si se establece en –1, los controladores usan el valor de calidad predeterminado.

dwSampleSize

Tamaño, en bytes, de una sola muestra de datos. Si el valor de este miembro es cero, las muestras pueden variar de tamaño y cada muestra de datos (por ejemplo, un fotograma de vídeo) debe estar en un fragmento independiente. Un valor distinto de cero indica que se pueden agrupar varias muestras de datos en un único fragmento dentro del archivo.

En el caso de las secuencias de vídeo, este número suele ser cero, aunque puede ser distinto de cero si todos los fotogramas de vídeo tienen el mismo tamaño. En el caso de las secuencias de audio, este número debe ser el mismo que el miembro nBlockAlign de la estructura WAVEFORMAT o WAVEFORMATEX que describe el audio.

rcFrame

Dimensiones del rectángulo de destino de vídeo. Los valores representan las coordenadas de la esquina superior izquierda, el alto y el ancho del rectángulo.

dwEditCount

Número de veces que se ha editado la secuencia. El controlador de flujo mantiene este recuento.

dwFormatChangeCount

Número de veces que el formato de la secuencia ha cambiado. El controlador de flujo mantiene este recuento.

szName[64]

Cadena terminada en NULL que contiene una descripción de la secuencia.

Comentarios

Nota

El encabezado vfw.h define AVISTREAMINFO como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado vfw.h

Consulte también

Funciones y macros AVIFile

Estructuras avifile

PCMWAVEFORMAT

WAVEFORMAT

WAVEFORMATEX

mmioFOURCC