Filtro AVI Mux
[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O filtro AVI Mux aceita vários fluxos de entrada e os intercala no formato AVI. O filtro usa pinos de entrada separados para cada fluxo de entrada e um pino de saída para o fluxo AVI.
Aplicativos de captura ou criação de vídeo podem usar esse filtro para salvar arquivos em disco no formato AVI. O filtro normalmente está conectado ao filtro Gravador de Arquivos , mas pode se conectar a qualquer filtro cujo pino de entrada dê suporte às interfaces IStream e IMemInputPin .
Rótulo | Valor |
---|---|
Interfaces de filtro | IBaseFilter, IConfigAviMux, IConfigInterleaving, IMediaSeeking, IPersistMediaPropertyBag, ISpecifyPropertyPages |
Tipos de mídia de pino de entrada | Qualquer tipo principal que corresponda a um FOURCC de estilo antigo ou MEDIATYPE_AUXLine21Data. (Para obter mais informações, consulte Classe FOURCCMap.)
|
Interfaces de pino de entrada | IAMStreamControl, IMemInputPin, IPin, IPropertyBag, IQualityControl |
Tipos de mídia de pino de saída | MEDIATYPE_Stream, MEDIASUBTYPE_Avi |
Interfaces de pino de saída | IPin, IQualityControl |
Filtrar CLSID | CLSID_AviDest |
CLSID da página de propriedades | CLSID_AviMuxProptyPage, CLSID_AviMuxProptyPage1 |
Executável | qcap.dll |
Mérito | MERIT_DO_NOT_USE |
Categoria de Filtro | CLSID_LegacyAmFilterCategory |
Comentários
Os comentários a seguir descrevem vários aspectos da funcionalidade do filtro AVI Mux.
Pins
Quando o filtro AVI Mux é criado, ele tem um pino de entrada. À medida que cada pino de entrada é conectado, o filtro cria um novo pino de entrada.
Propriedades do Fluxo
Os pinos de entrada dão suporte à interface IPropertyBag para definir propriedades em fluxos individuais. Atualmente, a seguinte propriedade é definida:
Propriedade | Descrição |
---|---|
name | O nome do fluxo. Essa propriedade é gravada como uma 'strn' parte. |
Se o filtro estiver em execução ou pausado, o método IPropertyBag::Write retornará VFW_E_WRONG_STATE.
Taxas de quadros
Se o filtro upstream não especificar uma taxa de quadros no membro AvgTimePerFrame da estrutura VIDEOINFOHEADER, o AVI Mux usará os carimbos de data/hora no primeiro quadro de vídeo. O formato de arquivo AVI não dá suporte a taxas de quadros variáveis.
Quadros removidos
O filtro AVI Mux calcula os quadros descartados com base nos tempos de mídia de cada amostra, se disponíveis, ou então os carimbos de data/hora da amostra. Ele grava uma entrada de índice de comprimento zero para cada quadro descartado.
Imediaseeking
O filtro AVI Mux implementa a interface IMediaSeeking da seguinte maneira:
- O método GetCurrentPosition retorna o progresso atual do multiplexação. Se você estiver transcodificação de um arquivo (mais lento do que em tempo real), esse valor será mais preciso do que o valor retornado pelo Gerenciador de Grafo de Filtro. Para obter mais informações, consulte a seção Comentários da página de referência GetCurrentPosition.
- O método GetDuration consulta cada upstream filtro e retorna a duração do fluxo mais longo. Se qualquer um desses filtros falhar na chamada GetDuration (ou não oferecer suporte a IMediaSeeking), o AVI Mux retornará um código de falha e preencherá o parâmetro pDuration com a duração mais longa encontrada. No entanto, o valor de pDuration nesse caso não é necessariamente o comprimento do fluxo de entrada mais longo.
- O AVI Mux não implementa os métodos GetStopPosition, GetPositions, GetAvailable, GetRate ou GetPreroll; nem implementa nenhum método Set* para busca.
Extensões de formato de arquivo AVI 2.0
No momento, o DirectShow dá suporte às seguintes extensões de formato de arquivo AVI 2.0:
- Aumento do tamanho do arquivo AVI (maior que 1 GB)
- Indexação hierárquica
Para obter mais informações, consulte a versão 1.02 do "OpenDML AVI File Format Extensions" publicado pelo Subcomitê de Formato de Arquivo OpenDML AVI M-JPEG.
Tópicos relacionados