## AVISource / OpenDMLSource / AVIFileSource / WAVSource

`AVISource` (string filename [, ...], bool "audio" = true, string "pixel_type" = YV12, [string fourCC])
`OpenDMLSource` (string filename [, ...], bool "audio" = true, string "pixel_type" = YV12, [string fourCC])
`AVIFileSource` (string filename [, ...], bool "audio" = true, string "pixel_type" = YV12, [string fourCC])
`WAVSource` (string filename [, ...])

`AVISource toma como argumento um ou mais nomes de arquivos entre aspas e lê neles usando a` interface `AVIFile do` Windows `ou o código OpenDML embutido de AviSynth (do VirtualDub).` Este filtro pode ler qualquer arquivo que tenha um manipulador do AVIFile. Isto não só inclui `arquivos` AVI mas também WAV, AVS (escritos do AviSynth) e VDR (frameserver do VirtualDub). Se você der múltiplos nomes como argumentos, os clipes serão combinados com `UnalignedSplice`. O argumento bool é opcional e seu padrão é `true`.

O filtro AVISource examina o arquivo para determinar seu tipo e passa-o ao manipulador do AVIFile ou ao do OpenDML como conveniente. No caso de você ter dificuldade com um ou outro manipulador, também pode usar os filtros OpenDMLSource e AVIFileSource que forçam o uso de um ou outro manipulador. Qualquer manipulador pode ler `arquivo` AVI (< 2GB), mas só o manipulador do OpenDML pode ler AVI maior e só o manipulador do AVIFile pode ler outros tipos de arquivo como WAV, VDR e AVS.

Até a v2.04, WAVSource era um apelido do AVIFileSource. Em versões posteriores, WAVSource não tenta mais abrir o fluxo vídeo. Pode ser útil se você quiser recobrar o fluxo de áudio de um arquivo AVI mas o fluxo vídeo é estragado ou seu método de compressão não é suportado em seu sistema.

Da v2.04 para cima é suportado internamente pelo áudio ACM (Audio Compression Manager, Gerenciador de Compressão de Áudio, por exemplo mp3-AVIs). AVISource também não é mais capaz de abrir arquivos WAV que devem ser acessados com WAVSource.

Da v2.06 o parâmetro pixel_type (padrão YUY2) permite escolher o formato de saída do descompressor. Valores válidos são "YUY2", RGB32" e "RGB24". Se omitido, AviSynth usará o primeiro formato suportado pelo descompressor (na ordem seguinte: YUY2, RGB32, RGB24). Este parâmetro não tem nenhum efeito se o vídeo estiver num formato sem compressão (YUY2, RGB32 ou RGB24), porque nenhum descompressor será usados nesse caso. Da v2.5 o parâmetro pixel_type padrão é mudado para YV12. Em outras palavras: se você não especifica algo, tentará sair AVI como YV12, se isso não for possível, tenta YUY2 e se também não for possível, tenta RGB.

Às vezes as cores serão destorcidas ao carregar um clipe DivX no AviSynth v2.5 (os canais croma U e V são trocados), devido a um bug no DivX (5.02 e mais velho). Você pode usar `SwapUV` para corrigir.

Da v2.53 `AVISource` também pode abrir vídeo DV tipo 1 (áudio não).

Da v2.55, uma opção fourCC foi incluída. FourCC, é a princípio um Código de 4 Caracteres no início do arquivo de mídia, geralmente associado ao avi que informa qual o codec a usar em seu sistema para decodificar o arquivo. Você pode usar isto para forçar AviSource abrir o arquivo avi com um codec diferente. Uma lista de FOURCCs (Código de 4 Caracteres) pode ser achada aqui. Por padrão, o fourCC do avi é usado.

Alguns codecs de MJPEG/DV não dão saída CCIR 601correta complacente ao usar AVISource. O problema poderia surgir se o formato de cor da entrada e saída do codec forem diferentes. Por exemplo, se o formato de cor da entrada é YUY2, e o formato de cor da saída é RGB, ou vice-versa. Há dois modos para solucionar isso:

1) Forçar a mesma saída do formato de cor da entrada. Assim por exemplo (se a entrada é RGB):

    AVISource("file.avi", pixel_type="RGB32")

2) Corrija com o filtro ColorYUV:

    AVISource("file.avi").ColorYUV(levels="PC->TV")

Algumas referências:
MJPEG codecs
DV codecs

Exemplos:

    AVISource("d:\capture.avi")        # Nota aos Programadores em C: sem contra barras duplas AVISource("c:/capture/00.avi")     # forward slashes work too
    WAVSource("f:\soundtrack.wav")     # isto trabalha
    WAVSource("f:\soundtrack.wav")     # Então faça assim
    AVISource("cap1.avi","cap2.avi")   # mesmo que AVISource ("cap1.avi" )+AVISource ("cap2.avi ")AVISource("cap.avi",false,"RGB32") # disable audio and request RGB32 decompression

Log de mudanças:

v2.55 | Opção fourCC incluída.

`$Date: 2006/03/26 18:11:19 $ Portuguese translation by RoLon`