Compartilhar via


Estrutura AVIFILEINFOA (vfw.h)

A estrutura de AVIFILEINFO contém informações globais para um arquivo AVI inteiro.

Sintaxe

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;

Membros

dwMaxBytesPerSec

Taxa de dados máxima aproximada do arquivo AVI.

dwFlags

Um OR bit a bit ou de zero ou mais sinalizadores. Os seguintes sinalizadores são definidos:

Nome Descrição
AVIFILEINFO_HASINDEX
O arquivo AVI tem um índice no final do arquivo. Para um bom desempenho, todos os arquivos AVI devem conter um índice.
AVIFILEINFO_MUSTUSEINDEX
O índice de arquivo contém a ordem de reprodução para as partes no arquivo. Use o índice em vez da ordenação física das partes ao reproduzir os dados. Isso pode ser usado para criar uma lista de quadros para edição.
AVIFILEINFO_ISINTERLEAVED
O arquivo AVI é intercalado.
AVIFILEINFO_WASCAPTUREFILE
O arquivo AVI é um arquivo especialmente alocado usado para capturar vídeo em tempo real. Os aplicativos devem avisar o usuário antes de gravar um arquivo com esse sinalizador definido porque o usuário provavelmente desfragmentou esse arquivo.
AVIFILEINFO_COPYRIGHTED
O arquivo AVI contém dados e software protegidos por direitos autorais. Quando esse sinalizador é usado, o software não deve permitir que os dados sejam duplicados.

dwCaps

Sinalizadores de funcionalidade. Os seguintes sinalizadores são definidos:

Nome Descrição
AVIFILECAPS_CANREAD
Um aplicativo pode abrir o arquivo AVI com o privilégio de leitura.
AVIFILECAPS_CANWRITE
Um aplicativo pode abrir o arquivo AVI com o privilégio de gravação.
AVIFILECAPS_ALLKEYFRAMES
Cada quadro no arquivo AVI é um quadro-chave.
AVIFILECAPS_NOCOMPRESSION
O arquivo AVI não usa um método de compactação.

dwStreams

Número de fluxos no arquivo. Por exemplo, um arquivo com áudio e vídeo tem pelo menos dois fluxos.

dwSuggestedBufferSize

Tamanho de buffer sugerido, em bytes, para leitura do arquivo. Em geral, esse tamanho deve ser grande o suficiente para conter a maior parte do arquivo. Para um arquivo intercalado, esse tamanho deve ser grande o suficiente para ler um registro inteiro, não apenas uma parte.

Se o tamanho do buffer for muito pequeno ou for definido como zero, o software de reprodução terá que realocar a memória durante a reprodução, reduzindo o desempenho.

dwWidth

Largura, em pixels, do arquivo AVI.

dwHeight

Altura, em pixels, do arquivo AVI.

dwScale

Escala de tempo aplicável para todo o arquivo. Dividir dwRate dwScale fornece o número de amostras por segundo.

Qualquer fluxo pode definir sua própria escala de tempo para substituir a escala de tempo do arquivo.

dwRate

Taxa em um formato inteiro. Para obter a taxa em exemplos por segundo, divida esse valor pelo valor em dwScale.

dwLength

Comprimento do arquivo AVI. As unidades são definidas por dwRate e dwScale.

dwEditCount

Número de fluxos que foram adicionados ou excluídos do arquivo AVI.

szFileType[64]

Cadeia de caracteres terminada em nulo que contém informações descritivas para o tipo de arquivo.

Observações

Nota

O cabeçalho vfw.h define AVIFILEINFO como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
cabeçalho vfw.h

Consulte também

de Macros e Funções do AVIFile

estruturas AVIFile