Estrutura AVICOMPRESSOPTIONS (vfw.h)
A estrutura AVICOMPRESSOPTIONS contém informações sobre um fluxo e como ele é compactado e salvo. Essa estrutura passa dados para a função AVIMakeCompressedStream (ou a função AVISave , que usa AVIMakeCompressedStream).
Sintaxe
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;
Membros
fccType
Código de quatro caracteres que indica o tipo de fluxo. As seguintes constantes foram definidas para os dados comumente encontrados em fluxos AVI:
Constante | Descrição |
---|---|
|
Indica um fluxo de áudio. |
|
Indica um fluxo MIDI. |
|
Indica um fluxo de texto. |
|
Indica um fluxo de vídeo. |
fccHandler
Código de quatro caracteres para o manipulador de compressor que compactará esse fluxo de vídeo quando ele for salvo (por exemplo, mmioFOURCC ('M','S','V','C')). Esse membro não é usado para fluxos de áudio.
dwKeyFrameEvery
Período máximo entre quadros-chave de vídeo. Esse membro será usado somente se o sinalizador AVICOMPRESSF_KEYFRAMES estiver definido; caso contrário, cada quadro de vídeo é um quadro-chave.
dwQuality
Valor de qualidade passado para um compressor de vídeo. Esse membro não é usado para um compressor de áudio.
dwBytesPerSecond
Taxa de dados do compressor de vídeo. Esse membro será usado somente se o sinalizador AVICOMPRESSF_DATARATE estiver definido.
dwFlags
Sinalizadores usados para compactação. Os seguintes valores são definidos:
Nome | Descrição |
---|---|
|
Compacta esse fluxo de vídeo usando a taxa de dados especificada em dwBytesPerSecond. |
|
Intercala esse fluxo a cada quadro dwInterleaveEvery em relação ao primeiro fluxo. |
|
Salva esse fluxo de vídeo com quadros-chave pelo menos todos os quadros dwKeyFrameEvery . Por padrão, cada quadro será um quadro-chave. |
|
Usa os dados nessa estrutura para definir os valores de compactação padrão para AVISaveOptions. Se uma estrutura vazia for passada e esse sinalizador não estiver definido, alguns padrões serão escolhidos. |
lpFormat
Ponteiro para uma estrutura que define o formato de dados. Para um fluxo de áudio, essa é uma estrutura LPWAVEFORMAT .
cbFormat
Tamanho, em bytes, dos dados referenciados por lpFormat.
lpParms
Dados específicos do compressor de vídeo; usado internamente.
cbParms
Tamanho, em bytes, dos dados referenciados por lpParms
dwInterleaveEvery
Fator de intercalação para intercalar dados de fluxo com dados do primeiro fluxo. Usado somente se o sinalizador AVICOMPRESSF_INTERLEAVE estiver definido.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | vfw.h |
Confira também
Funções e macros AVIFile