Condividi tramite


Struttura AVIFILEINFOA (vfw.h)

La struttura AVIFILEINFO contiene informazioni globali per un intero file AVI.

Sintassi

typedef struct _AVIFILEINFOA {
  DWORD dwMaxBytesPerSec;
  DWORD dwFlags;
  DWORD dwCaps;
  DWORD dwStreams;
  DWORD dwSuggestedBufferSize;
  DWORD dwWidth;
  DWORD dwHeight;
  DWORD dwScale;
  DWORD dwRate;
  DWORD dwLength;
  DWORD dwEditCount;
  char  szFileType[64];
} AVIFILEINFOA, *LPAVIFILEINFOA;

Members

dwMaxBytesPerSec

Velocità massima approssimativa dei dati del file AVI.

dwFlags

Or bit per bit di zero o più flag. I flag seguenti sono definiti:

Nome Descrizione
AVIFILEINFO_HASINDEX
Il file AVI ha un indice alla fine del file. Per prestazioni ottimali, tutti i file AVI devono contenere un indice.
AVIFILEINFO_MUSTUSEINDEX
L'indice file contiene l'ordine di riproduzione per i blocchi nel file. Usare l'indice anziché l'ordinamento fisico dei blocchi durante la riproduzione dei dati. Questo può essere usato per creare un elenco di fotogrammi per la modifica.
AVIFILEINFO_ISINTERLEAVED
Il file AVI è interleaved.
AVIFILEINFO_WASCAPTUREFILE
Il file AVI è un file allocato appositamente usato per l'acquisizione di video in tempo reale. Le applicazioni devono avvisare l'utente prima di scrivere su un file con questo flag impostato perché l'utente probabilmente ha deframmentato questo file.
AVIFILEINFO_COPYRIGHTED
Il file AVI contiene dati e software protetti da copyright. Quando viene usato questo flag, il software non deve consentire il duplicato dei dati.

dwCaps

Flag di funzionalità. I flag seguenti sono definiti:

Nome Descrizione
AVIFILECAPS_CANREAD
Un'applicazione può aprire il file AVI con il privilegio di lettura.
AVIFILECAPS_CANWRITE
Un'applicazione può aprire il file AVI con il privilegio di scrittura.
AVIFILECAPS_ALLKEYFRAMES
Ogni frame nel file AVI è un fotogramma chiave.
AVIFILECAPS_NOCOMPRESSION
Il file AVI non usa un metodo di compressione.

dwStreams

Numero di flussi nel file. Ad esempio, un file con audio e video ha almeno due flussi.

dwSuggestedBufferSize

Dimensioni del buffer suggerite, in byte, per la lettura del file. In genere, questa dimensione deve essere abbastanza grande per contenere il blocco più grande nel file. Per un file interleaved, queste dimensioni devono essere sufficienti per leggere un intero record, non solo un blocco.

Se la dimensione del buffer è troppo piccola o è impostata su zero, il software di riproduzione dovrà riallocare la memoria durante la riproduzione, riducendo le prestazioni.

dwWidth

Larghezza, in pixel, del file AVI.

dwHeight

Altezza, in pixel, del file AVI.

dwScale

Scala temporale applicabile per l'intero file. La divisione di dwRate per dwScale fornisce il numero di campioni al secondo.

Qualsiasi flusso può definire la propria scala temporale per sostituire la scala temporale del file.

dwRate

Frequenza in un formato intero. Per ottenere la frequenza nei campioni al secondo, dividere questo valore in base al valore in dwScale.

dwLength

Lunghezza del file AVI. Le unità sono definite da dwRate e dwScale.

dwEditCount

Numero di flussi aggiunti o eliminati dal file AVI.

szFileType[64]

Stringa con terminazione null contenente informazioni descrittive per il tipo di file.

Commenti

Nota

L'intestazione vfw.h definisce AVIFILEINFO come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
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