Condividi tramite


Struttura AVICOMPRESSOPTIONS (vfw.h)

La struttura AVICOMPRESSOPTIONS contiene informazioni su un flusso e su come viene compresso e salvato. Questa struttura passa i dati alla funzione AVIMakeCompressedStream (o alla funzione AVISave , che usa AVIMakeCompressedStream).

Sintassi

typedef struct {
  DWORD  fccType;
  DWORD  fccHandler;
  DWORD  dwKeyFrameEvery;
  DWORD  dwQuality;
  DWORD  dwBytesPerSecond;
  DWORD  dwFlags;
  LPVOID lpFormat;
  DWORD  cbFormat;
  LPVOID lpParms;
  DWORD  cbParms;
  DWORD  dwInterleaveEvery;
} AVICOMPRESSOPTIONS, *LPAVICOMPRESSOPTIONS;

Members

fccType

Codice a quattro caratteri che indica il tipo di flusso. Le costanti seguenti sono state definite per i dati comunemente trovati nei flussi AVI:

Costante Descrizione
streamtypeAUDIO
Indica un flusso audio.
streamtypeMIDI
Indica un flusso MIDI.
streamtypeTEXT
Indica un flusso di testo.
streamtypeVIDEO
Indica un flusso video.

fccHandler

Codice a quattro caratteri per il gestore del compressore che comprime il flusso video quando viene salvato (ad esempio , mmioFOURCC ('M','S','V','C')). Questo membro non viene usato per i flussi audio.

dwKeyFrameEvery

Periodo massimo tra fotogrammi chiave video. Questo membro viene utilizzato solo se il flag AVICOMPRESSF_KEYFRAMES è impostato; in caso contrario, ogni fotogramma video è un fotogramma chiave.

dwQuality

Valore di qualità passato a un compressore video. Questo membro non viene utilizzato per un compressore audio.

dwBytesPerSecond

Velocità dei dati del compressore video. Questo membro viene utilizzato solo se è impostato il flag AVICOMPRESSF_DATARATE.

dwFlags

Flag utilizzati per la compressione. Vengono definiti i valori seguenti:

Nome Descrizione
AVICOMPRESSF_DATARATE
Comprime questo flusso video usando la velocità dei dati specificata in dwBytesPerSecond.
AVICOMPRESSF_INTERLEAVE
Interleaves questo flusso ogni dwInterleaveEvery frame rispetto al primo flusso.
AVICOMPRESSF_KEYFRAMES
Salva questo flusso video con fotogrammi chiave almeno ogni fotogramma dwKeyFrameEvery . Per impostazione predefinita, ogni fotogramma sarà un fotogramma chiave.
AVICOMPRESSF_VALID
Usa i dati in questa struttura per impostare i valori di compressione predefiniti per AVISaveOptions. Se viene passata una struttura vuota e questo flag non è impostato, verranno scelte alcune impostazioni predefinite.

lpFormat

Puntatore a una struttura che definisce il formato dei dati. Per un flusso audio, si tratta di una struttura LPWAVEFORMAT .

cbFormat

Dimensioni, in byte, dei dati a cui fa riferimento lpFormat.

lpParms

Dati specifici del compressore video; utilizzato internamente.

cbParms

Dimensioni, in byte, dei dati a cui fa riferimento lpParms

dwInterleaveEvery

Fattore interleave per intersperare i dati del flusso con i dati del primo flusso. Utilizzato solo se è impostato il flag di AVICOMPRESSF_INTERLEAVE.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Intestazione vfw.h

Vedi anche

Funzioni e macro AVIFile

Strutture AVIFile

AVIMakeCompressedStream

SALVATAGGIO AVISalva

AVISaveOptions

mmioFOURCC