Perguntas mais Freqüentes do Avisynth

Observação: uma versão mais recente pode ser encontrada em http://www.avisynth.org

O faq é dividido em quatro seções: uma seção geral, uma relacionada à frameserving, uma a filtros e plugins e outra relacionada a importação de filtros do VirtualDub. Recentemente, as matérias antigas relacionadas a AviSynth v2.06 e versões mais velhas são retiradas. Assim, se você tiver problemas, instale uma versão do AviSynth mais recente.

S1: Sobre AviSynth
S2: AviSynth e frameserving
S3: Filtros, plugins e colorspaces
S4: Importação de filtros do VirtualDub

S1: Sobre o AviSynth:

Q1.1: O que é AviSynth ?
Q1.2: Quem desenvolve o AviSynth ?
Q1.3: Onde eu posso baixar as mais recentes versões de AviSynth?
Q1.4: Quais são os principais bugs nestas versões?
Q1.5: Onde posso encontrar documentação sobre AviSynth?
Q1.6: Como instalar/desinstalar AviSynth?
Q1.7: Há alguma diferença entre v1.0x, v2.0x ou v2.5x?
Q1.8: Existem plugins compilados para v2.5x compatíveis com v1.0x/v2.0x e vice-versa?
Q1.9: Quais programas de codificação suportam YV12?
Q1.10: Como uso v2.5x se os programas de codificação não controlam YV12 (como Virtualdub, TMPGEnc ou CCE SP)?
Q1.11: Como uso AviSynth v2.5 com Gordian Knot?
Q1.12: Quais as principais vantagens de processamento/codificação em YV12?
Q1.13: Há uma utilidade de linha de comando para codificar DivX/XviD com AviSynth?
Q1.14: Onde posso achar VCF2AVS?
Q1.15: Como uso um plugin compilado para v2.0x em v2.5x?
Q1.16: Como mudo entre diferentes versões de Avisynth sem re-instalar?
Q1.17: Como faço um arquivo AVS?
Q1.18: Onde salvo meu arquivo AVS?
Q1.19: Como sei o número da minha versão do AviSynth?
Q1.20: AviSynth têm um GUI (interface gráfica do usuário)?
Q1.21: Eu tive a mensagem LoadPlugin: incapaz de carregar "xxx" não é um plugin AviSynth 1.0/AviSynth 2.5?
Q1.22: Como sei qual colorspace estou usando em um determinado lugar em meu manuscrito?
Q1.23: Eu instalei AviSynth v2.5 e DivX5 (ou uma das mais recentes criações de Xvid de Koepi), tudo que obtive foi uma tela preta ao abrir meu avs no Virtualdub/VirtualdubMod/CCE/TMPGEnc?
Q1.24: Meu computador parece travar ao acaso durante uma segunda passagem em qualquer encoder?
Q1.25: VirtualdubMod, WMP6.4, CCE e outros programas travam toda vez ao sair (ao prever um arquivo avs)?
Q1.26: Há algum codec YV12 sem perda que eu possa usar para capturar por exemplo?

S2: AviSynth e frameserving:

Q2.1: O que é frameserving e é bom para que?
Q2.2: Como uso AviSynth como um frameserver?
Q2.3: Como faço o frameserve do meu arquivo AVS para codificar/aplicação X?
Q2.4: Problemas quando o Codificador X ler arquivos AVS?
Q2.5: Como faço o frameserve de Premiere/Ulead/Vegas para AviSynth?
Q2.6: Ao usar o frameserving obtive a seguinte mensagem: erro de "Escrito, não há nenhuma função com o nome "xxx (o nome de algum filtro)""?
Q2.7: Eu tenho um erro de exceção não reconhecido que tenta carregar um arquivo avs com VirtualDub, ao usar dvd2avi v1.77.3?
Q2.8: Como carrego meu clipe no AviSynth (vídeo)?
Q2.9: Como eu carrego meu clipe em AviSynth (áudio)?
Q2.10: Posso importar um arquivo de áudio diferente de WAV?
Q2.11: Como unir vídeo e áudio?
Q2.12:  Eu tenho uma exceção não reconhecida na linha onde uso DirectShowSource?

S3: Filtros, plugins e colorspaces:

Q3.1: O que é RGB/YUV-colorspace ?
Q3.2: Em quais colorspaces trabalham AviSynth e os filtros internos?
Q3.3: Como carrego um plugin ao AviSynth?
Q3.4: Onde posso baixar filtros externos para AviSynth v1.0x/v2.0x?
Q3.5: Onde posso carregar filtros externos para AviSynth v2.5x?
Q3.6: Onde posso baixar utilitários para AviSynth?
Q3.7: Como converto entre os colorspaces?
Q3.8: O que/quando devo me preocupar quando o filtro X trabalha em RGB - ou espaço YUV?
Q3.9: Como uso e onde consigo os plugins "Subtitler" e "Carregador BMP"?

S4: Importar filtros do VirtualDub:

Q4.1: Onde posso baixar as mais recente versão de escritos que importam filtros de VirtualDub?
Q4.2: Quais filtros são importados?
Q4.3: Estes escritos trabalham em espaços RGB ou YUV?
Q4.4: Como faço um escrito?
 

S1: Sobre o Avisynth:
 

Q1.1: O que é o AviSynth ?

A: Uma excelente descrição é dada em Lukes homepage:

"AviSynth é uma utilidade muito útil criada por Ben Rudiak-Gould. Dá muitas opções para unir e filtrar vídeos. O que torna o AviSynth único é o fato de que não é um programa independente para produzir arquivos de saída. Ao invés, AviSynth age como um intermediário entre seus vídeos e as aplicações de vídeo.

Basicamente, AviSynth trabalha assim: Primeiro, você cria um documento de texto simples com comandos especiais, chamados scripts. Estes comandos fazem referências a um ou mais vídeos e os filtros que você deseja rodar neles. Aí você roda um aplicativo de vídeo, como VirtualDub e abre o arquivo do escrito. Aqui é quando AviSynth entra em ação.  Abre os vídeos que você referenciou no escrito, roda os filtros especificados e alimenta a produção para a aplicação de vídeo. Porém, a aplicação não sabe que AviSynth está trabalhando no fundo e pensa que está abrindo diretamente um arquivo AVI filtrado que reside no seu disco rígido.

Há cinco razões principais para que você queira usar AviSynth:

     
  1. Unir Vídeos: AviSynth une qualquer quantidade de vídeo, inclusive AVIs segmentados. Você pode até unir seletivamente certas porções de um vídeo ou dublar trilhas sonoras.

  2.  
  3. Filtrar Vídeos: Muitos filtros para processar vídeo estão embutidos no AviSynth. Por exemplo, filtros para redimensionar, aparar e aguçar.

  4.  
  5. Quebre a barreira dos 2 Gb: AviSynth alimenta um programa com um vídeo em lugar de deixar o programa abri-lo diretamente. Por causa disto, você pode usar normalmente AviSynth para abrir arquivos maiores que 2 GB em programas que originalmente não suportam arquivos daquele tamanho.

  6.  
  7. Abrir formatos não suportados: AviSynth pode abrir quase qualquer tipo de vídeo, inclusive MPEGs e certos MOVs do Quicktime. Porém, quando AviSynth alimentar vídeo a um programa, apenas se parece como um AVI normal para aquele programa. Isto permite abrir certos formatos de vídeos em programas que normalmente não os suportariam.

  8.  
  9. Economizar Espaço em Disco: AviSynth gera o vídeo que alimenta rapidamente um programa. Então, nenhum vídeo temporário ou intermediário é criado. Por causa disto, você economiza espaço no disco.

 

Q1.2: Quem desenvolve o AviSynth ?

A: AviSynth (até v1.0b) é desenvolvido por Ben Rudiak-Gould, veja http://math.berkeley.edu/~benrg/avisynth.html.  Ben parou e Edwin van Eggelen continuou, veja http://www.videotools.net/uk/download.php. Sua mais recente versão é a v1.0b6 que pode ser encontrada  na homepage de Edwin acima.

Algumas versões apareceram no fórum AviSynth, por exemplo v1.0b7a por Divine e v1.0b7d por Dividee.

No princípio de julho de 2002 houve uma segunda revisão do projeto "sourceforge".  (No primeiro projeto de "sourceforge" não aconteceu muito).  A mais recente versão é v2.54, mas podem ser achadas mais recentes builds semanais aqui. Para documentação dê uma olhada em Q1.5.
 

Q1.3: Onde eu posso baixar as mais recentes versões de AviSynth?

A: Ver Q1.2. Também está no pacote de DVD2SVCD e na página de download Doom (podem não ser as mais novas versões do AviSynth).
 

Q1.4: Quais são os principais bugs nestas versões?

A: As mais recentes versões:

v1.0b5: Dissolve não funciona, BicubicResize não funciona corretamente.
v1.0b6: ?
v1.0b7a/v1.0b7d: Dissolve não funciona.
v2.01: ?
v2.02: Layer e MergeChroma não funcionam.
v2.05: Loop não funciona ao carregar um clipe sem som.
v2.07/v2.50: SegmentedAviSource não carrega o avi se o último segmento vazio não for apagado.

v2.50 beta; AviSynthTwoFiveZeroBugs.
v2.51 beta; AviSynthTwoFiveOneBugs.
v2.52; AviSynthTwoFiveTwoBugs.

podem ser encontrados outros bugs na documentação da página do projeto, veja Q1.5.
 

Q1.5: Onde posso encontrar documentação sobre AviSynth?

A: Documentação sobre os filtros do AviSynth pode ser achada neste site http://www.avisynth.org/, e também na página filtros. Para um tutorial em scripting do avisynth, dê uma olhada neste site. Você deve ler estes documentos antes de postar no fórum (mas está OK para postar se tiver dificuldade para entendê-los).
 

Q1.6: Como instalar/desinstalar AviSynth?

A: Na versão v2.05 ou mais velhas: mova avisynth.dll a seu diretório system/system32 e execute o install.reg. A partir da v2.06 AviSynth, vem com um instalador automático. Também tenha certeza que não haja outra versão de AviSynth fluindo pelo seu disco, porque há uma mudança numa dessas versões que será registrada. Remova-a se necessário. Para desinstalar AviSynth vá até “program”, “AviSynth 2” e selecione “Uninstall AviSynth”.
 

Q1.7: Há alguma diferença entre v1.0x, v2.0x ou v2.5x?

A: As versões v1.0x e v2.0x são compatíveis (a diferença principal é que a v2.0x não contém IPCSource, mas contém outros filtros que não estão presentes na v1.0x) .  A diferença principal com a v2.5x é que a estrutura interna de AviSynth mudou (YV12 e suporte a multicanal) com a conseqüência que os plugins externos compilados para a v1.0x ou v2.0x não trabalharão para v2.5x e vice-versa.
 

Q1.8: Existem plugins compilados para v2.5x compatíveis com v1.0x/v2.0x e vice-versa?

A: Como explicado em Q1.7 esse não é o caso.  Mas é possível usar um plugin da v1.0x/v2.0x na v2.5x, veja Q1.15.
 

Q1.9: Quais programas de codificação suportam YV12?

A: Há várias opções para codificar em DivX/XviD:

  1. Há uma versão modificada (VirtualdubMod) que tem suporte a YV12: Esta modificação (por pulco-citron, Suiryc e Belgador) tem suporte OGM e à prévia AVS.  Pode ser baixado aqui.  Para usar o suporte a YV12 (sem fazer qualquer conversão de cor) você tem que carregar seu AVI em VirtualdubMod e selecionar "fast recompress".
  2. VirtualDub suporta YV12 a partir da v1.5.6.  Para usar o suporte YV12 (sem fazer qualquer conversão de cor) você tem que carregar seu AVI em VirtualDub e selecionar "fast recompress".
  3. Para fácil (e rápido) suporte YV12, você também pode experimentar o novo compressor em linha de comando: AVS2AVI, veja também Q1.21.


Q1.10: Como uso v2.5x se os programas de codificação não controlam YV12 (como Virtualdub, TMPGEnc ou CCE SP)?

A: Com Virtualdub inclua "ConvertToYUY2" ao seu script ou instale um descompressor YV12 tipo DivX5 ou um dos recentes builds XviD de Koepi (XviD-04112002-1 ou mais novo).  Habilitando "fast recompress" significa que haverá uma conversão YV12--> YUY2--> YV12.  (DivX3/4 também suporta YV12, exceto que os usuários de PIV podem ter travamentos ao codificar para DivX4 em YV12.)

Usando TMPGEnc você tem que incluir a linha ConvertToRGB24 ao seu script e para CCE SP você precisa incluir a linha ConvertToYUY2 no script, porque o Windows não tem o compressor interno YV12.  Você também pode instalar DivX5, uma das recentes construções de XviD de Koepi (XviD-04112002-1 ou mais novo) que descomprimirá o YV12-AVI para você ao carregar o avi no TMPGEnc ou no CCE SP.
 

Q1.11: Como uso AviSynth v2.5 com Gordian Knot?

- Se você usa o GKnot 0.26 tem que renomear mpeg2dec3.dll (o único para AviSynth v2.5) para mpeg2dec.dll, e virtualdubmod.exe para virtualdub.exe (mantendo cópias dos exe e dll originais em algum lugar).

- Se está usando GKnot 0.27 pode seguir o mesmo procedimento como acima, ou pode entrar mpeg2dec3.dll como alternativo mpeg2dec.dll no menu de opções e renomear virtualdubmod.exe para virtualdub.exe.

- Mas também pode tentar o novo GKnot 0.28.

Se está usando o mais velho VirtualdubMod 1.4.13.1 e tem problemas, carregue o mais recente prerelease.
 

Q1.12: Quais as principais vantagens de processamento/codificação em YV12?

A: Há duas vantagens:


Q1.13: Há uma utilidade de linha de comando para codificar DivX/XviD com AviSynth?

A: Como explicado em Q1.9 há uma linha de comando de nome AVS2AVI (e AVS2AVI GUI) para codificar para DivX/XviD usando o AviSynth.
 

Q1.14: Onde posso achar VCF2AVS?

A: VCF2AVS é uma boa ferramenta para converter vcf a arquivos avs. Você pode editar suas capturas no vdub (basicamente cortando, aparando e redimensionando), e depois editar o avs resultante. Seja cuidadoso já que há duas versões instaladas:

Tente ambas e veja qual satisfaz suas necessidades :)
 

Q1.15: Como uso um plugin compilado para v2.0x em v2.5x?

A: Em WarpSharp-package for AviSynth v2.5x você irá encontrar este plugin "LoadPluginEx.dll". Ao usar uma versão mais velha de LoadPluginEx.dll, não mova este plugin ao seu diretório de plugin e sim a um outro, caso contrário VirtualdubMod e WMP6.4 chocarão em exist.  Isto o habilitará a usar plugins de v2.0x em v2.5x.  Um exemplo de escrito (usando o plugin de v2.0x Dust por Firme Steady):

LoadPlugin("C:\Program Files\avisynth2_temp\plugins\LoadPluginEx.dll")
LoadPlugin("C:\Program Files\avisynth2_temp\plugins\dustv5.dll")

AviSource("D:\clip.avi").ConvertToYUY2
PixieDust(5)
 

Q1.16: Como mudo entre diferentes versões de Avisynth sem re-instalar?

A:


Q1.17: Como faço um arquivo AVS?

A: Ver Q1.19 (use seu editor de texto preferido).
 

Q1.18: Onde salvo meu arquivo AVS?

A: Onde quiser em seu HD.
 

Q1.19: Como sei o número da versão do meu AviSynth?

A: Abra um editor de texto, por exemplo bloco de notas. À linha seguinte

Version

e salve o arquivo com a extensão avs.  Salve por exemplo como version.avs (tenha certeza de que a extensão é "avs" e não "txt") .  Abra o arquivo em uma aplicação que pode ler arquivos AVI, por exemplo WMP 6.4. O número da versão será exibido.
 

Q1.20: AviSynth têm um GUI (interface gráfica do usuário)?

A: Várias ferramentas boas estão disponíveis:


Q1.21: Eu tive a mensagem LoadPlugin: incapaz de carregar "xxx" não é um plugin AviSynth 1.0/AviSynth 2.5?

A: Você está usando um plugin que não é compatível com essa versão do AviSynth.  dê uma olhada em Q1.8.
 

Q1.22: Como sei qual "colorspace" estou usando em um determinado lugar em meu manuscrito?

A: Para ver qual "colorspace" você está usando em um determinado lugar em seu escrito, acrescente:

Info

... e AviSynth lhe dará muita informação sobre "colorspace" entre outras coisas!
 

Q1.23: Eu instalei AviSynth v2.5 e DivX5 (ou uma das mais recentes criações de Xvid de Koepi), tudo que eu obtive foi uma tela preta ao abrir meu avs no Virtualdub / !VirtualdubMod/CCE/TMPGEnc?

A: Ok, aparentemente seu vídeo não foi descomprimido por DivX5 (ou XviD).  Vá até seu diretório e renomeie um arquivo chamado MSYUV.DLL, ou acrescente o seguinte a seu arquivo de registro:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
"VIDC.YV12"="divx.dll"

Substitua "divx.dll" por "xvid.dll" para XviD.
 

Q1.24: Meu computador parece travar ao acaso durante uma segunda passagem em qualquer encoder?

A : AviSynth (especialmente v2.5x) foi altamente aperfeiçoado. Como uma conseqüência é possível que seu computador parece travar ao acaso durante uma segunda passagem. Tente executar o teste de tensão [Prime95] durante uma hora, para conferir se seu sistema é estável. Se este teste falhar (ou seu computador travar) certifique que seu computador não é “overclocked” e baixe a velocidade do barramento de seu processador em passos de (digamos) cinco MHz até que as falhas acabem.
 

Q1.25:VirtualdubMod, WMP6.4, CCE e outros programas travam toda vez ao sair (ao prever um arquivo avs)?

A: Este problema surge se você tem uma versão mais velha de LoadPluginEx.dll (ou WarpSharp.dll) do pacote de WarpSharp em seu dir de plugin. A solução é removê-lo do diretório e carregá-lo manualmente. Eu espero que o fabricante desse plugin também note isso ...

Q1.26: Há algum codec YV12 sem perda que eu possa usar para capturar por exemplo?:

A: Existem vários deles:

  1. VBLE codec (por MarcFD): um encoder baseado no huffyuv 
  2. LocoCodec (por TheRealMoh):
  3. MJPEG codec: Deixa um pequeno logotipo no lado superior direito do clipe.


S2: AviSynth e frameserving:
 

Q2.1: O que é frameserving e é bom para que?

A: Uma excelente descrição é achada na Lukes homepage:

"Frameserving é um processo pelo qual você transfere dados de vídeo diretamente de um programa para outro em seu computador. Nenhum arquivo intermediário ou temporários é criado. O programa que abre o arquivo(s) fonte e produz a saída dos dados de vídeo é chamado ”frameserver”. O programa que recebe os dados pode ser qualquer tipo de aplicação de vídeo.

Há duas razões principais pelas quais você pode querer o “frameserve” para um vídeo:

     
  1. Economia de espaço no disco:

  2. Dependendo da aplicação do “frameserving”, você pode editar/processar normalmente seu vídeo conforme está sendo “frameserved”. Pelo fato de que “frameserving” não produz nenhum arquivo intermediário, você pode usar um “frameserver” para alterar seus vídeos sem precisar de qualquer espaço adicional em disco. Por exemplo, se você quiser unir dois arquivos de vídeo, redimensionar e alimentá-los a outra aplicação de vídeo, o “frameserving” lhe permitirá fazer isso sem criar um grande arquivo intermediário.
     
  3. Compatibilidade aumentada:

  4. Para a aplicação de vídeo que está recebendo o vídeo de frameserved, a entrada parece um arquivo de vídeo relativamente pequeno, não comprimido. Porém, o arquivo fonte que o “frameserver” está transferindo pode ser de fato e por exemplo, um vídeo MPEG-1 altamente comprimido. Se sua aplicação de vídeo não suporta arquivo MPEG-1, não é problema porque a aplicação está apenas recebendo vídeo normal sem compressão do “frameserver”. Esta característica permite abrir certos tipos de arquivos em uma aplicação que normalmente não os suportaria.


Além disso, como a aplicação de vídeo está sendo alimentada pelo vídeo fonte a um quadro por vez, não sabe nada sobre o tamanho do arquivo fonte do vídeo. Desta forma, se sua aplicação tiver limite para 2 GB ou 4 GB em tamanho de arquivo de entrada, não terá efeito em seu vídeo “frameserved”. Você poderia alimentar 100 GB de vídeo por um “frameserver” para uma aplicação limitada a 2 GB e não causaria qualquer tipo de  problema."
 

Q2.2: Como uso AviSynth como um frameserver?

A: Escreva um escrito com um editor de texto. Carregue seu clipe (veja Q2.8) no AviSynth, faça a filtragem necessária e carregue o arquivo AVS no encoder/application X (deve ser um encoder ou aplicação que possa ler arquivos AVI, veja Q2.3 e Q2.4).
 

Q2.3: Como faço o frameserve do meu arquivo AVS para codificar/aplicação X?

A:

Q2.4: Problemas quando o Codificador X ler arquivos AVS?

A:

  1. Por que não posso abrir meu arquivo AVS no TMPGEnc (isto acontece em versões antigas do TMPGEnc)?
  2. CCE SP trava ao ler um arquivo AVS, o que fazer?
  3. Codificadores/tocadores (como CCE SP v2.62/v2.64) não lêm arquivos AVS?

  4. Muitos programas "novos" NÃO usam as funções do Windows para ler os arquivos AVI. Se eles NÃO as usam, os arquivos de escritos AviSynth também não trabalharão. Programas conhecidos que NÃO usam essas rotinas são CCE SP v2.62, Windows Media Encoder vx.x. Além disso muitos informam problemas com o Windows Media Player 7.
     
  5. Codec YUY2 errado causa erros de colorspace em escritos AviSynth que alimentam TMPGEnc?

  6. De repente, há um tempo atrás, descobri que alimentar TMPGEnc com um escrito AviSynth resultava no que se parecia com um erro de conversão de colorspace, como se o vídeo tivesse tremido duramente para baixo de 24 bit para 8 bit! (..)

    Se você tem tais problemas inclua "ConvertToRGB24" como a última linha de seu escrito ou dê uma olhada nos artigos (e as soluções sugeridas) erros de conversão de colorspace.
     

Q2.5: Como faço o frameserve de Premiere/Ulead/Vegas para AviSynth?

A: Você pode tentar o frameserver AviSynth compatível (importação) para [PluginPace frameserver (por Satish Kumar)]: Para frameserving de SonicFoundry Vegas (e versões mais recentes de Vegas Video/VideoFactory?), Adobe Premiere ou Ulead MediaStudio Pro para AviSynth. [discussão].
 

Q2.6: Ao usar o frameserving obtive a seguinte mensagem: erro de "Escrito, não há nenhuma função com o nome "xxx (o nome de algum filtro)""?

A: Você provavelmente instalou/registrou uma versão de AviSynth que não contém o filtro.  Tenha certeza de que nenhuma outra versão esteja em seu disco rígido (há uma possibilidade de que uma versão estará registrada mesmo não estando no seu diretório de sistema) . Confira se a versão correta está registrada, veja também Q1.19.
 

Q2.7: Eu tenho um erro de exceção não reconhecido que tenta carregar um arquivo avs com VirtualDub, ao usar dvd2avi v1.77.3?

A: .d2v criado com dvd2avi v1.77.3 não é compatível com mpeg2dec.dll!  Use v1.76 em vez disso. Se você ainda quiser usar v1.77.3, tenha certeza em ter o AviSynth v2.5 instalado e mpeg2dec3.dll v1.07 (ou uma versão mais recente).
 

Q2.8: Como carrego meu clipe no AviSynth (vídeo)?

A: Faça um escrito contendo as linhas (substitua o nome e o caminho do arquivo):
 

  1. Arquivos AVI (com WAV sem compressão, ou áudio CBR/VBR MP3 (a partir da v2.04)):

  2. AviSource("d:\filename.avi")
    ou desativando o áudio:
    AviSource("d:\filename.avi", false)
     
  3. Arquivos AVI que AVISource não suporta (por exemplo "tipo DV I arquivos AVI"):

  4. DirectShowSource("d:\filename.avi")
    DirectShowSource("d:\filename.mpg")
     
  5. Dê uma olhada em Mpeg decoder plugins for AviSynth v1.0x/v2.0x e o Mpeg decoder plugins for AviSynth v2.5x:

  6. Com AviSynth v2.0x/AviSynth v2.5x e MPEGdecoder.dll:
    LoadPlugin("d:\MPEGdecoder.dll")
    mpegsource("d:\filename.mpg")
     
  7. Arquivos MPEG2 (extensão m2p ou m2v):

  8. Dê uma olhada em Mpeg decoder plugins for AviSynth v1.0x/v2.0x e o Mpeg decoder plugins for AviSynth v2.5x. Alguns exemplos:
     

  9. Arquivos VOB:


  10. Dê uma olhada em Mpeg decoder plugins for AviSynth v1.0x/v2.0x e o Mpeg decoder plugins for AviSynth v2.5x. Alguns exemplos:
     
  11. Fluxos de transporte ATSC (extensão *.trp ou *.ts):


  12.  
  13. Fluxos de transporte PVA:

  14. Você está sem sorte aqui.  AFAIK as únicas opções são PVAStrumento e Xmuxer.
     
  15. Arquivos d2v (arquivos de frameserver DVD2AVI):

  16. LoadPlugin("d:\mpeg2dec.dll")
    mpeg2source("d:\filename.d2v")
     
  17. Arquivos vdr (arquivos de frameserver do VirtualDubs):

  18. AVISource("d:\filename.vdr")
     
  19. Arquivos ASF (a taxa de quadro deve ser especificada, clique com o direito no arquivo com o windows explorer):

  20. DirectShowSource("d:\filename.asf", fps=15)
     
  21. Arquivos tpr (arquivos de projeto TMPGEnc)

  22. Note primeiro que o plugin GreedyHMA está provando ser uma solução melhor de IVTC (não mencionar *MUITO* mais fácil) que TMPGEnc. Assim, se quer usar TMPGEnc para isto pegue o plugin GreedyHMA (este plugin trabalha em espaço YUV).

    Se você ainda quiser importar um arquivo tpr a um AVS, há duas possibilidades:
     

  23. Arquivos aup (projetos AviUtl)

  24. Eu não sei se é possível carregá-lo diretamente ao AviSynth. Importe o arquivo aup em VFAPI, crie um falso avi e carregue ao AviSynth (note que VFAPI trabalha em RGB). Também veja http://forum.doom9.org/showthread.php?s=&threadid=10007.
     
  25. Arquivos QuickTime (veja http://forum.doom9.org/showthread.php?s=&threadid=23139):

  26. Use DirectShowSource:
    DirectShowSource("d:\filename.mov")
    ou se isso não funciona, carregue um plugin (pode ser achado em Dooms, na seção de download):
    LoadVFAPIPlugin("C:\QTReader\QTReader.vfp", "QTReader")
    QTReader("C:\quicktime.mov")
     
  27. Arquivos AVS:

  28. Apenas importe-o no começo de seu escrito:
    Import("d:\filename.avs")
    Na v2.05 ou versão mais recente você pode usar o “autoplugin loading”.  Apenas mova seu arquivo AVS no dir de plugin que contém os outros plugins (externos) e renomeie a extensão para ' avsi'.  Veja também Q5.2.


Q2.9: Como carrego meu clipe em AviSynth (áudio)?

A: Isto pode ser feito de várias maneiras:

  1. Usando AviSource (com áudio sem compressão WAV, CBR/VBR MP2 (a partir da v2.04) ou áudio CBR/VBR MP3 (a partir da v2.04)):

  2. AviSource("d:\filename.avi")

    A partir da v2.05 você pode extrair áudio de um AVI deste modo:
    WavSource("d:\filename.avi")
     

  3. Use o plugin decodificador de áudio MPASource, veja Q3.4 e Q3.5 para importar áudio  mp1/mp2/mp3.

  4.  
  5. Veja DirectShowSource para downmixing áudio AC3.

  6.  
  7. Ponha um cabeçalho WAV em seu arquivo de áudio mp2 ou mp3 (com Besweet) e use WavSource para importar o áudio.  Você também precisa de codecs de ACM para mp2, e para mp3 (Radium codec, veja Dooms, na seção de download) .  Use WavSource para carregar o WAV:

  8. WavSource("d:\filename.wav")
Até a v2.07 o áudio deve ser mono ou estéreo.  A partir da v2.5 você pode importar também multicanal de áudio sem compressão.
 

Q2.10: Posso importar um arquivo de áudio diferente de WAV?

A: Sim:

Veja também Q2.9.
 

Q2.11: Como unir vídeo e áudio?

A: Faça um arquivo avs que contém as linhas (mude os nomes e caminhos):

video = AviSource("d:\filename1.avi")
audio = WavSource("d:\filename2.wav")
AudioDub(video, audio)
 

Q2.12:  Eu tenho uma exceção não reconhecida na linha onde uso DirectShowSource?

A: Você tem o VobSub instalado? Dê uma olhada nestes artigos. Atualize para VobSub v2.20 ou mais recente. Se alguém tiver uma explicação, por favor poste nos artigos.
 

S3: Filtros e colorspaces:
 

Q3.1: O que é RGB/YUV-colorspace?

A: Existem dois modos diferentes de representar cores: colorspace YUV e RGB.  Em colorspace YUV há um componente que representa clareza (luma) e dois outros componentes que representam cor (croma). Desde que luma seja transportada cheio de detalhes, os detalhes nos componentes de croma podem ser reduzidos através de sub amostragem (filtrando, ou calculando a média) que pode ser feito de vários modos (assim há muitos formatos para armazenar um quadro em colorspace YUV).  Em colorspace RGB há três componentes, um para a quantia de Vermelho, um para o Verde e um para o Azul.  Também no colorspace há muitos formatos para armazenar uma imagem que difere na quantia de amostras que são usados para uma das três cores.

Informação pode ser encontrada aqui: YUV Formats, RGB Formats, MSDN YUV Formats e Chroma subsampling por Charles Poyton.

A partir do AviSynth v1.0x/v2.0x, RGB24, RGB32, e YUY2 são suportados.  Em AviSynth v2.5x há também suporte para YV12.
 

Q3.2: Em quais colorspaces trabalham AviSynth e os filtros internos?

A: AviSynth trabalha em RGB e YUV usando os formatos RGB32, RGB24, YUY2 e YV12.  A maioria dos filtros internos trabalha em quaisquer destes formatos, também. Qual formato de cor que um filtro requer, pode ser achado [aqui].
 

Q3.3: Como carrego um plugin ao AviSynth?

A: A partir da v2.05 pode usar sua característica de auto-carga de plugin. O caminho do diretório de plugin é fixado durante a instalação. Mas se você quiser mudar isso por alguma razão, mude ou inclua as seguintes linhas:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Avisynth]
"PluginDir"="c:\\program files\\avisynth 2.5\\plugins"

Mude o caminho acima se necessário e tenha certeza que criou também o diretório de plugin. Salve como install_autoplugin.reg, e inclua no seu arquivo de registro clicando nele com o direito. Finalmente mova todas suas funções de plugins/script ao diretório de plugin. Se você quiser carregar plugins manualmente, use "LoadPlugin". Um exemplo de escrito:

LoadPlugin("d:\mpeg2dec.dll")
mpeg2source("d:\filename.d2v")
 

Q3.4: Onde posso baixar filtros externos para AviSynth v1.0x/v2.0x?

A: A maioria deles pode ser achada na seção de AviSynth de Doom9. Mas em baixo achará linques para a maioria deles. Se você tiver um plugin que está faltando, por favor sinta-se à vontade para acrescentá-lo à lista com esta ligação "Edit this document" à esquerda. A maioria destes plugins trabalha em YUY2. Se você não pode achar o plugin (os anexos ainda estão desativados), você pode baixar os plugins da página [WarpEnterprises].

Remoção de Desentrelaçamento & Pulldown:
Todo vídeo PAL, NTSC, e SECAM é entrelaçado, o que significa que só a outra linha é irradiada a cada intervalo de renovação. Os filtros de Desentrelaçamento o livram de qualquer problema causado por isto. Os filtros IVTC (telecine inverso, remoção de pulldown) desfazem o processo telecine que vem de diferenças entre o momento de seu vídeo e sua fonte original.

  1. Pacote Decomb Filter (por Donald Graft): Este pacote de funções de plugin para AviSynth fornece os meios para remover artefatos pentes de fluxos telecinados progressivos, fluxos entrelaçados e misturas disso. Funções podem ser combinadas para implementar telecine inverso para NTSC e fluxos PAL. [YUY2]

  2.  
  3. ViewFields/UnViewFields (por Simon Walters): ViewFields e UnViewFields são um par de filtros complementares para exibir e identificar o topo e os campos inferiores de uma fonte entrelaçada. [YUY2]

  4.  
  5. GreedyHMA plugin (por Tom Barry): O código do algoritmo Greedy/HM de DScaler para executar a comparação de pulldown, filtragem, e desentrelaçamento do vídeo. [YUY2]

  6.  
  7. Filtro de Desentrelaçamento de Movimento Compensado "TomsMoComp" (por Tom Barry): Este filtro usa compensação de movimento e processo adaptável para desentrelaçamento da fonte de vídeo (não para filme NTSC). [YUY2]

  8.  
  9. SmoothDeinterlacer (por Gunnar Thalin, passado ao AviSynth por Xesdeeni): Uma porta do filtro VirtualDub [Smooth Deinterlacer]. [YUY2, RGB]

  10.  
  11. IVTC plugin v2.2 (por "Wizard_FL", Seção de download de Dooms): Este plugin reverte o processo telecine. [YUY2]

  12.  
  13. "IT" (por thejam79): Plugin de Telecine Inverso. Tradução do README

  14.  
  15. "AntiComb" (por ?): Este filtro remove combing (artefatos de entrelace). Tradução do README

  16.  
  17. Veja também Auto24FPS e AutoDeint na seção MiscPlugins abaixo.
Suavizadores Spatio-Temporal:
Estes filtros usam semelhanças e diferenças de cor ambos dentro e entre quadros para reduzir ruídos e melhorar o tamanho comprimido. Eles podem melhorar grandemente um vídeo ruidoso, mas deve ser tomado um pouco de cuidado com eles para evitar movimento borrado e perda de detalhe.
  1. PeachSmoother (por Lindsey Dubb): Um suavizador adaptável aperfeiçoado para radiodifusões de TV: documentação; discussão. O Peach trabalha procurando píxeis bons e colhendo fumaça laranja deles. Quando juntou bastante fumaça laranja, borrifa sobre os píxeis ruins, tornando-os melhores. Trabalha só em computadores com instruções SSE (Athlons, Pentium 3 ou 4, Celerons recentes, ou posteriores). [YUY2]

  2.  
  3. "MAM" (por Marc FD): Este filtro usa detecção de movimento para adaptar o método anti ruído usado, em áreas imóveis usa filtrado temporal e de espaço e em áreas com movimento usa qualquer filtro de espaço e temporal que você quiser.  Já não é mais desenvolvido, mas pode ser baixado temporariamente deste site. [YUY2]

  4.  
  5. NoMoSmooth (por SansGrip): Um suavizador de movimento spatio-temporal adaptável: documentação; discussão. [YUY2]

  6.  
  7. Dust (por Steady): Um removedor de ruído. [YUY2, RGB]

  8.  
  9. Filtro Mediano SpatioTemporal "STMedianFilter" (por Tom Barry): STMedianFilter é um filtro spatial/temporal mediano (de movimento ligeiramente compensado). Bug: mudanças de cores estranhas (o clipe fica roxo) [YUY2]

  10.  
  11. Convolution3D (por Vlad59): Convolution3D é um suavizador spatio-temporal, aplica um filtro 3D de convolução a todos os píxeis das imagens sucessivas. [YUY2]
Suavizadores Spatial:
Estes usam semelhanças e diferenças de cor dentro de uma imagem para melhorar o quadro e reduzir o tamanho comprimido. Eles podem suavizar o ruído muito bem, mas colocações agressivas demais podem causar uma perda de detalhe.
  1. Suavizadores Mascarados "msmooth" (por Donald Graft): O filtro é efetivo para remover ruído de mosquito como também suavizar efetivamente áreas planas em (especialmente) anime (atualmente em conserto) [RGB]

  2.  
  3. Plugin Suavizador HiQ(uality) (por Klaus Post): Este filtro executa suavização (spatial) em material de vídeo para eliminar ruído e artefatos de MPEG. [YUY2]

  4.  
  5. msoften (por Marc FD): Este Filtro é um anti-ruído spatial como 2dcleaner.  Alguma discussão pode ser achada aqui. [YUY2]

  6.  
  7. Plugin de convolução geral (por Richard Berg): Um suavizador spatial (descrição). Este plugin será uma função embutida a partir do AviSynth v2.01. [YUY2, RGB]

  8.  
  9. Redução de Ruído Wavelet (por thejam): Pode remover ruído de freqüência única em três bandas de freqüências diferentes, independentemente para direção X - e Y- e para o Y, Cr e colorplane de Cb (documentação). Note que só trabalha para PC com instruções SSE. [YUY2]

  10.  
  11. Filtro de Redução de Ruído Dinâmico 2 "DNR2" [YUY2, RGB]

  12.  
  13. Filtro de Redução de Ruído 2D Cleaner "_2DClenYUY2" [YUY2]

  14.  
  15. Veja também KenKunNR na seção Miscelânea de Plugins, abaixo.
Suavizadores Temporal:
Estes filtros usam semelhanças e diferenças de cor entre quadros para melhorá-los e reduzir o tamanho comprimido. Eles podem se livrar da maioria do ruído em áreas estacionárias sem perda de detalhes, mas colocações mais fortes podem borrar as áreas de movimento.
  1. TemporalSoften2 plugin (por Dividee): Este plugin é melhor que o TemporalSoften interno até v2.02; remove ruído de um clipe de vídeo pela mistura seletiva de píxeis.  Está embutido na v2.03 e em todas as versões subseqüentes (substitui a velha função e tem o mesmo nome: TemporalSoften). [YUY2]

  2.  
  3. TemporalSmoother plugin (por Dividee): Este filtro é um redutor de ruído adaptável e trabalha ao longo do eixo de tempo. [YUY2]

  4.  
  5. TemporalCleaner (por Jim Casaburi; passado ao AviSynth por Vlad59): Um anti-ruído temporal simples mas muito rápido, visado a melhorar a compressibilidade. [YUY2]

  6.  
  7. Grape Smoother (por Lindsey Dubb): documentação; discussãoQuando cores mudam só um pouco, o filtro decide que provavelmente seja ruído e só muda ligeiramente a cor da imagem prévia. Conforme a mudança de cor aumenta, o filtro é cada vez mais convencido que a mudança é devido a movimento em vez de ruído e a nova cor adquire cada vez mais peso. [YUY2]

  8.  
  9. Redutor de Ruído de Croma (por Marc FD): Reduz o ruído em croma (UV) e preserva em luma (Y), discussão. [YUY2]

  10.  
  11. Veja também KenKunNRT na seção Miscelânea de Plugins, abaixo.
Plugins Sharpen/Soften:
Estes são relacionados de perto aos Suavizadores Spatial, acima.  Eles tentam melhorar a qualidade da imagem aguçando ou suavizando as extremidades.
  1. Filtros Smart sharpening "MSharpen" (por Donald Graft): Este filtro é muito efetivo para aguçar as extremidades importantes sem ampliar o ruído. [YUY2, RGB]

  2.  
  3. Sharpen/Blur filter "Focus2" (por Marc FD): Sharpen2 e Blur2 são otimizações MMX das funções internas Sharpen e Blur, que a partir da v2.50 as substituirão. [YUY2, RGB]

  4.  
  5. Unfilter plugin (por Tom Barry): Este filtro suaviza/aguça um clipe: discussão.  Implementa filtros horizontais e verticais projetados (parcialmente) para reverter esforços prévios a melhorar o suavizar ou o aguçar, comum (mas feio) na área de DVD. [YUY2]

  6.  
  7. Veja também WarpSharp, Xsharpen e Unsharp Mask na seção Miscelânea de Plugins, abaixo.
Redimensionadores:
  1. Lanczos resize filter (Implementado por Nic): A partir da v2.06 AviSynth terão um redimensionador de lanczos3 embutido mais rápido. [YUY2, RGB]

  2.  
  3. SimpleResize plugin (por Tom Barry): Interpolação linear de 2 toques simples e muito rápida.  Sem filtragem, significa que não suaviza muito. [YUY2]
Subtítulos:
  1. VobSub plugin (por Gabest): Um plugin para importar seus subtítulos. [YUY2, RGB]
Plugins Decodificadores MPEG (fonte):
  1. "MPEG2DEC" (por dividee): Mpeg2dec é um plugin que permite AviSynth importar arquivos MPEG2.

  2.  
  3. "MPEG2DEC2" (por Tom Barry): Um substituto do MPEG2DEC.DLL.  O mesmo MPEG2DEC.DLL com otimização SSE2. Mais rápido com CPU Pentium IV.

  4.  
  5. "MPEG2DEC3" (por Marc FD): Uma modificação de MPEG2DEC.DLL com deblocking e deringing, discussão.

  6.  
  7. "MpegDecoder" (por Nic): Um substituto do MPEG2DEC.DLL.  Também pode ler Fluxos de Transporte MPEG-2 (VOB) e trabalha muito rápido.
Plugins Decodificadores MPA (fonte):
  1. MPASource (por Warpenterprises): Um plugin decodificador de áudio mp1/mp2/mp3, discussão.
Plugins de Rádio Difusão de Vídeo:
Significa tomar cuidado com vários problemas que mostram quando o vídeo do ar é capturado.  Alguns ajudam na separação de luma/croma, outros reduzem os problemas de interferência ou compensam o overscan.
  1. AntiBlink (por Kurosu): Tenta diminuir a cintilação (efeito arco-íris) em áreas com mudanças agudas em luminância (letras, por exemplo). [YUY2]

  2.  
  3. Guava Comb (por Lindsey Dubb): Este é um filtro pente, pretende livrar o arco-íris, rasto de ponto e cintilação em partes imóveis de uma imagem. documentação; discussão [YUY2]

  4.  
  5. Ghostbuster (por SansGrip): Este filtro remove "fantasmas" de um clipe.  Um fantasma neste contexto é uma cópia fraca do quadro com desvio horizontal.  Trabalha subtraindo ou somando a imagem de si mesmo ao desvio especificado. Este filtro é baseado no filtro Exorcist de Krzysztof Wojdon do VirtualDub. [YUY2]

  6.  
  7. BorderControl plugin (por Simon Walters): Depois da captura do vídeo você pode querer apará-lo para se livrar do lixo.  BorderControl o permite a borrar bordas incluídas em vez de colocar bordas sólidas para prevenir artefatos entre imagem e borda. [YUY2]

  8.  
  9. AutoCrop plugin (por CropsyX): Automaticamente apara as bordas pretas de um clipe. discussão [YUY2]
Miscelânea de Plugins:
  1. ImageSequence plugin (por Bzzz2): Um plugin para abrir seqüências de imagens.

  2.  
  3. Robust duplicate frame detector "Dub" (por Donald Graft): Este filtro reduz o tamanho de filmes de anime "removendo" quadros duplicados. [YUY2]

  4.  
  5. Tweak plugin (por Donald Graft): Ajusta tom, saturação, brilho e contraste.  Esta é uma função embutida que inicia com AviSynth v2.01. [YUY2]

  6.  
  7. WarpSharp, Xsharpen, UnsharpMask, KenKunNR, KenKunNRT, UVTimingH, UVTimingV, LoadAviUtlInputPlugin, LoadAviUtlFilterPlugin, ConvertYUY2ToAviUtlYC, ConvertAviUtlYCToYUY2, EraseGhost, SearchGhost, EraseGhostV, SearchGhostV, Auto24FPS, AutoDeint, FrameCache, AVIEncodeVideo, LoadPlugin (por ???): Filtros passados ao VirtualDub e ao AviUtl. A última versão pode ser achada aqui. [YUY2]

  8.  
  9. AviSynth monitor "avsmon" (por johann.Langhofer): Este plugin permite prever o vídeo durante a conversão e determinar o retardo exato do áudio. [YUY2, RGB ?]

  10.  
  11. MergeLuma/MergeChroma plugin (por Klaus Post): Este plugin é uma função interna que começa com AviSynth v2.01. [YUY2]

  12.  
  13. Call (por Nic): Um plugin que para chamar e passar parâmetros a um programa externo em linha de comando como Besweet.

  14.  
  15. Blockbuster (por SansGrip): Com este filtro pode-se usar vários métodos para reduzir ou eliminar blocos DCT: incluindo ruído (distribuído por Gaussian), aguçando ou borrando.  Alguma discussão pode ser achada aqui. [YUY2, RGB ?]

  16.  
  17. ChromaShift (por Simon Walters): ChromaShift troca a informação de crominância à direita através de dois píxeis para compensar a inscrição Y/UV incorreta. [YUY2]

  18.  
  19. TurnLeft e TurnRight (por Warpenterprises): Gira seu clipe -90 ou 90 graus.  Este plugin é uma função interna que inicia com AviSynth v2.51. [RGB]

  20.  
  21. Chr.dll (por WarpEnterprises): Permite entrar caracteres ASCII e starting time.

  22.  
  23. Spray (por WarpEnterprises): Pega os píxeis próximos e os borrifa ao redor, assim você pode borrifar os píxeis de fora da área do logotipo fortuitamente para dentro. [RGB32]

  24.  
  25. Zoom "Pan/Zoom/Rotate" (por WarpEnterprises): Um plugin para Pan/Zoom/Girar seu clipe. [RGB32]

  26.  
  27. MJPEGcorrect plugin: Luma (brilho) em decodificadores MJPEG é freqüentemente decodificado incorretamente à luma-faixa YUV.  Este é um plugin com propósito especial escrito para fixar este caso com vídeos de MJPEG, descrição. [YUY2]

  28.  
  29. Muitos filtros VirtualDub, veja seção S4: Importando filtros do VirtualDub. [RGB32]

  30.  
Q3.5: Onde posso baixar filtros externos para AviSynth v2.5x?

A: A maioria deles pode ser achado na seção de AviSynth em Doom9. Mas abaixo você achará linques para a maioria deles. Se você souber de um plugin que está faltando, por favor sinta-se livre para acrescentá-lo à lista com o linque "Edit this document" à esquerda. A maioria destes plugins trabalha em YUY2. Se você não pode achar o plugin (os anexos ainda estão desativados), você pode pegar os plugins na página [WarpEnterprises].

Remoção de Desentrelaçamento & Pulldown:

Todo vídeo PAL, NTSC, e SECAM é entrelaçado, o que significa que só a outra linha é irradiada a cada intervalo de renovação. Os filtros de Desentrelaçamento o livram de qualquer problema causado por isto. Os filtros IVTC (telecine inverso, remoção de pulldown) desfazem o processo telecine que vem de diferenças entre o momento de seu vídeo e sua fonte original.

  1. rePal (por Bach): Um plugin muito útil para fazer uma conversão 30->25 IVTC. Deve ser usado junto com um (smart)bob. Pode ser usado quando sua fonte for material telecinado PAL. [YV12, YUY2]
  2.  
  3. Unblend (por Bach): Um plugin baseado no algoritmo deblend de Warpenterprise e Neuron2 de código decimate. É para conversões falhas de NTSC->PAL. [YV12]
  4.  
  5. Pacote Decomb Filter (por Donald Graft): Este pacote de funções de plugins para AviSynth provê os meios para remover artefatos pentes de fluxos telecinados progressivos, fluxos entrelaçados e de misturas disso. Podem ser combinadas funções para implementar telecine inverso para fluxos NTSC e PAL. discussão [YV12, YUY2]
  6.  
  7. Desentrelaçador baseado em Área (por Donald Graft): Passado do filtro de Virtuldub. [RGB32]
  8.  
  9. DGBob (por Donald Graft): Este filtro divide cada campo da fonte em seu próprio quadro e então cria as linhas perdidas interpolando o campo atual ou usando os dados do campo prévio. discussão [YV12, YUY2, RGB]
  10.  
  11. KernelDeint (por Donald Graft): Este filtro desentrelaça com uma aproximação de núcleo. Dá resolução vertical grandemente melhorada em áreas desentrelaçadas comparadas a simples campo de descarte. [discussão]. [YV12, YUY2, RGB]
  12.  
  13. MultiDecimate (por Donald Graft): Remove N de todos os quadros de M, levando os mais semelhante para seus antecessores. discussão [YUY2]
  14.  
  15. Smoothdeinterlacer (recompilado por Donald Graft): Uma porta do filtro Desentrelaçador Suave de VirtualDub. [YUY2, RGB32]
  16.  
  17. Interpolação Bob (por kevina20723): Este filtro trabalha identicamente ao filtro Bob interno AviSynth exceto que usa interpolação linear em vez de redimensionamento bicúbico. [YV12, YUY2]
  18.  
  19. SmartDecimate (por kevina20723): Deve ser muito bom para controlar telecines irregulares e também controlar bem clipes híbridos sem qualquer estremecimento ou obscurecimento excessivos (C-plugin). [discussão]. [YV12, YUY2]
  20.  
  21. TPRIVTC (por Kurosu): Usa a informação IVTC de Arquivos de Projeto Tsunami MPEG Encoder. [YV12, YUY2]
  22.  
  23. Restaurador de Quadro Progressivo "PFR" (por Simon Walters): Recupera quadros originais de filmes progressivos que passaram pelo processo telecine NTSC a 30fps para PAL 25fps tentando manter ainda a ordem de campo temporal correta. [discussão]. [YV12, YUY2]
  24.  
  25. "IT" (por thejam79, recompilado por Donald Graft): Plugin de telecine inverso. Tradução do README. [YUY2]
  26.  
  27. GreedyHMA (por Tom Barry): O código do algoritmo Greedy/HM de DScaler para executar pulldown comparando, filtrando e desentrelaçando vídeo. [discussão] [YUY2]
  28.  
  29. Filtro de desentrelace compensado de Movimento "TomsMoComp" (por Tom Barry): Este filtro usa compensação de movimento e processo adaptável para desentrelaçar fonte de vídeo (não para filme NTSC). discussão [YV12, YUY2]
  30.  
  31. UnComb IVTC (por Tom Barry): Filtro para comparar até mesmo campos trocados de filme fonte de vídeo corretamente telecinado NTSC ou PAL. discussão [YV12]
  32.  
  33. Veja ainda Auto24FPS e AutoDeint nas MiscPlugins da seção abaixo.
Suavizadores Spatio-Temporal:
Estes filtros usam semelhanças e diferenças de cor ambos dentro e entre quadros para reduzir ruídos e melhorar o tamanho comprimido. Eles podem melhorar grandemente um vídeo ruidoso, mas deve ser tomado um pouco de cuidado com eles para evitar movimento borrado e perda de detalhe.
  1. PeachSmoother (por Lindsey Dubb): Um suavizador adaptável aperfeiçoado para radiodifusões de TV: [documentação], [discussão]. O Peach trabalha procurando píxeis bons e colhendo fumaça laranja deles. Quando juntou bastante fumaça laranja, borrifa sobre os píxeis ruins, tornando-os melhores. Trabalha só em computadores com instruções SSE (Athlons, Pentium 3 ou 4, Celerons recentes, ou posteriores). [YUY2]
  2.  
  3. FluxSmooth (por SansGrip): suavizador spatio-temporal, discussão. [YV12]

  4.  
  5. Filtro MipSmooth (por Sh0dan): Pega o quadro de fonte e cria três novas versões, cada um com meio tamanho do prévio. E são re-escalados ao tamanho original. São comparados com o original e se a diferença estiver abaixo do mínimo, a informação é usada para formar o píxel final. [YV12]

  6.  
  7. SpatioTemporal Median Filter "STMedianFilter" (por Tom Barry): STMedianFilter é um filtro mediano spatial/temporal (de movimento ligeiramente compensado). [YV12, YUY2]

  8.  
  9. Convolution3DYV12 (por Vlad59): Convolution3D é um suavizador spatio-temporal, aplica um filtro de convolução 3D a todos os píxeis dos quadros sucessivos. discussão [YV12]
Suavizadores Spatial:
Estes filtros usam semelhanças e diferenças de cor entre quadro para melhorá-lo e reduzir o tamanho comprimido. Eles podem suavizar muito bem o ruído, mas colocações mais fortes podem causar perda de detalhe.
  1. Suavizador Mascarado "MSmooth" (por Donald Graft): Este filtro é efetivo para remover ruído de mosquito bem como suavizar efetivamente áreas planas em anime. discussão [YV12, RGB32]

  2.  
  3. SmoothUV (por Kurosu): Este filtro pode ser usado para reduzir (efeitos) arco-íris, como feito por SmartSmoothIQ. [discussão]. [YV12]

  4.  
  5. VagueDenoiser (por Lefungus): Um anti-ruído simples que usa wavelets [YV12]

  6.  
  7. Deen (por Marc FD): Vários anti-ruídos. [discussão] Este filtro pode causar perda de memória, use a seu próprio risco. [YV12]

  8.  
  9. eDeen (por Marc FD): Monstro Spatial. Este filtro pode causar perda de memória, use a seu próprio risco. [YV12]

  10.  
  11. SmoothHiQ (recompilado por Richard): [YUY2]

  12.  
  13. Filtro de Redução de Ruído Dinâmico 2 "DNR2" [YV12]

  14.  
  15. Filtro 2D Cleaner de Redução de Ruído "_2DClenYUY2" [YUY2]

  16.  
  17. Veja também KenKunNR nas Misc Plugins na seção abaixo.

Suavizadores Temporal:

Estes filtros usam semelhanças e diferenças de cor entre quadros para melhorá-los e reduzir o tamanho comprimido. Eles podem retirar a maioria do ruído em áreas estacionárias sem perda de detalhe, mas colocações mais fortes podem causar borrado nas áreas de movimento.

  1. TemporalCleaner (por Jim Casaburi; passado ao AviSynth por Vlad59): Um anti-ruído temporal simples mas muito rápido, visado melhorar a compressibilidade. [YV12]

  2.  
  3. Grape Smoother (por Lindsey Dubb): [documentação], [discussão]. Quando as cores mudam só um pouco, o filtro decide que provavelmente é ruído, e só muda ligeiramente a cor da imagem prévia. Caso a mudança de cor aumenta, o filtro é convencido cada vez mais que a mudança se deve ao movimento em vez de ruído e a nova cor adquire cada vez mais peso. [YUY2]

  4.  
  5. atc (por Marc FD): Limpador Temporal. [YV12]

  6.  
  7. Chroma Noise Reducer "Cnr2" (por Marc FD): Reduz o ruído no croma (UV) e preserva o luma (Y), [discussão] [YV12, YUY2]

  8.  
  9. Veja também KenKunNRT nas Misc Plugins na seção abaixo.
Plugins Sharpen/Soften:
Estes são relacionados de perto ao suavizador Spatial, acima. Eles tentam melhorar a qualidade da imagem aguçando ou suavizando as extremidades.
  1. MSharpen (por Donald Graft): Este plugin para Avisynth implementa um conceito incomum em aguçamento spatial. Embora especificamente projetado para anime, também trabalha muito bem em vídeo normal. O filtro é muito efetivo ao aguçar as extremidades importantes sem ampliar o ruído. discussão [YV12, YUY2, RGB]

  2.  
  3. asharp (por MarcFD): filtro de aguçamento adaptável, [discussão] [YV12]

  4.  
  5. Unfilter plugin (por Tom Barry): Este filtro suaviza/aguça um clip.  Implementa filtros horizontais e verticais projetados para reverter (ligeiramente) prévios esforços em suavizar ou aguçar a melhora que é comum (mas feio) em DVD. [discussão] [YV12, YUY2]

  6.  
  7. Veja também WarpSharp, Xsharpen e Unsharp Mask nas Misc Plugins na seção abaixo.
Redimensionadores:
  1. bicublinresize (por Marc FD): Este é um conjunto de reamostradores: FastBilinear (semelhante ao redimensionador simples de tbarry), FastBicubic (um reamostrador sem filtragem de Bicubic) e Bicublin (usa bicúbico em plano Y e bilinear em planos UV). discussão. [YV12]

  2.  
  3. Substituto ao ReduceBy2 TMPGEnc (por scmccarthy): Este filtro só é útil como uma substituição para ReduceBy para usuários que precisam converter de qualquer maneira ao espaço de cor RGB. Evita a interpolação dos planos de croma necessária para converter para RGB em vez de redimensionar o plano luma. [RGB]

  4.  
  5. SimpleResize (por Tom Barry): Muito simples e rápida interpolação linear de dois toques. É sem filtragem, significa que não suavizará muito. [YV12, YUY2]

  6.  
  7. YV12InterlacedReduceBy2 (por Tom Barry): InterlacedReduceBy2 é um rápido filtro Reduce By 2, muito útil como um redutor (por 2) muito rápido de um clipe entrelaçado. [discussão] [YV12]
Subtítulos:
  1. VSFilter (por Gabest): Para os fãs de subtítulo! [discussão]
Plugins de Decodificador MPEG (fonte):
  1. MPEG2DEC (por dividee) Mpeg2dec é um plugin para AviSynth importar arquivos MPEG2. (saídas para YUY2)

  2.  
  3. MPEG2DEC3 (por Marc FD e outros): Uma modificação da MPEG2DEC.DLL com deblocking e deringing. Note que a informação de colorspace de dvd2avi é ignorada ao usar mpeg2dec.

  4.  
  5. Mpegdecoder (por Nic): Esta DLL permite carregar arquivos VOB/MPEG-2/MPEG-1 diretamente para o AviSynth. discussão.
Plugins de Decodificador MPA (fonte):
  1. evilMPASource (por Nic): MPASource com suporte para entrada de MPEG1/2.

  2.  
  3. MPASource (por Warpenterprises): Um plugin decodificador de áudio mp1/mp2/mp3, discussão.
Plugins para comparar a qualidade do vídeo que usa o peso da qualidade do vídeo específico:
  1. SSIM (por Lefungus): Filtro para comparar a qualidade do vídeo (semelhante a psnr, mas usando um peso diferente de qualidade de vídeo). [YV12]

  2.  
  3. VqmCalc (por Lefungus): Filtro para comparar a qualidade do vídeo (semelhante a psnr, mas usando um peso diferente de qualidade de vídeo). [YV12]

Plugins para Vídeo de Rádio Difusão :

Significa tomar cuidado com vários problemas que mostram quando o vídeo do ar é capturado.  Alguns ajudam na separação de luma/croma, outros reduzem os problemas de interferência ou compensam o overscan.

  1. Super8Equal (por Belgabor): Um problema na transferência de filmes Super8 para mídia digital é o brilho não homogêneo produzido por projetores. Normalmente o brilho vai numa forma circular do centro para as bordas. Este filtro foi escrito para cancelar este problema. [YV12, YUY2, RGB]

  2.  
  3. AutoCrop plugin (por CropsyX): Apara automaticamente as bordas pretas de um clipe. discussão. [YV12, YUY2]

  4.  
  5. Declick (por Donald Graft): Remove luz de cliques horizontais. [YUY2]

  6.  
  7. Filtro Deflicker (por Donald Graft, passado do filtro de VirtualDub): Este filtro corrige vídeo que tem variações de luminância de quadro com o passar do tempo, o que genericamente podemos chamar de piscando. [YUY2]

  8.  
  9. Filtro Temporal Mediano Condicional (por kevina20723): Remove ruído temporal na forma de pequenos pontos e listras (C-plugin). [YV12]

  10.  
  11. X-Logo (por Leuf): Um filtro para remover logotipos. (Note que há uma conversão interna para RGB32 e volta). [YV12, YUY2, RGB]

  12.  
  13. Guava Comb (por Lindsey Dubb): Este é um filtro pente, pretende remover arco-íris, rastros de ponto e cintilação em partes imóveis de uma imagem. [documentação], [discussão]. [YUY2]

  14.  
  15. FixVHSOversharp (por MrTibs): Conserta os halos claros e escuros que acompanham as extremidades de alto contraste encontrados em fontes de VHS. [discussão]. [YUY2]

  16.  
  17. BorderControl (por Simon Walters): Depois de capturar o vídeo você pode pará-lo para se livrar do lixo.  BorderControl o permite borrar as bordas incluídas em vez de deixar bordas sólidas, prevenindo artefatos entre a imagem e a borda. [YV12, YUY2]

  18.  
  19. FillMargins (por Tom Barry): Um filtro similar ao BorderControl. [discussão] [YV12]

  20.  
  21. Reinterpolate411 (por Tom Barry): Parece com os píxeis de croma que estão sendo duplicados no codec de MainConcept (NTSC). O novo filtro ajudará descartando os píxeis de croma diferentes e recriando-os com a média dos 2 píxeis adjacentes. [discussão]. [YUY2]
Miscelânea de Plugins:
  1. Imagesequence plugin (por Bzzz, modificado por Warpenterprises e Sh0dan): Permite importar seqüências de imagem como arquivos .TIF, .TGA  e .JPG (imagens precisam ter 24 ou 32 bits por píxel). Este plugin está embutido a partir do AviSynth v2.52, e é chamado ImageReader.

  2.  
  3. Dup (por Donald Graft): Planejado para uso em clipes que têm um número significante de quadros com conteúdo duplicado, mas que difere devido ao ruído. Tipicamente anime tem muitas dessas tais duplicatas. Substituindo as duplicatas ruidosas com duplicatas exatas, uma redução de bitrate pode ser alcançada. discussão [YV12, YUY2]

  4.  
  5. Convert3d (por hanfrunz): Converte Filmes 3D entrelaçados (um campo esquerdo, outro campo da imagem direita) para formato anaglyph(?) (vermelho/ciano) que usa o método de mistura de telas “photoshops". [YUY2, RGB]

  6.  
  7. AviSynth monitor "avsmon" (por johann.Langhofer): Este plugin permite prever o vídeo durante a conversão e determinar o atraso exato do áudio. [YV12, YUY2 ?, RGB ?]

  8.  
  9. AVISynth C API (por kevina20723): C-plugins deve ser carregado com LoadCPlugin no AviSynth v2.52 ou versões mais velhas e também pode ser carregado com LoadPlugin a partir do AviSynth v2.53. Aviso: mantenha este plugin fora de seu diretório de plugin de auto carga para prevenir quedas. [discussão].

  10.  
  11. MaskTools (por Kurosu): Algumas ferramentas de máscaras gerais. [YV12]

  12.  
  13. Call (por Nic): Um plugin para chamar e passar parâmetros a um programa de linha de comando externo como Besweet.

  14.  
  15. AudioGraph (por Richard Ling, modificado por Sh0dan): Exibe o formato wav do áudio no alto do vídeo. [YUY2, RGB]

  16.  
  17. Blockbuster (por Sansgrip, recompilado por CruNcher): Com este filtro pode-se usar vários métodos para reduzir ou eliminar blocos DCT: incluindo ruído (distribuído por Gaussian), aguçando ou borrando. [YUY2]

  18.  
  19. ReverseFieldDominance (por Sansgrip): Reverte o domínio de campo de DV PAL. discussão. [YUY2, RGB]

  20.  
  21. ChromaShift (por Simon Walters): ChromaShift troca a informação de crominância em qualquer direção, para compensar a inscrição Y/UV incorreta. [YUY2]

  22.  
  23. CompareYV12 (por Shalcker): versão YV12 do filtro interno "Compare". [discussão]. [YV12]

  24.  
  25. SelectByString (por stickboy): Este filtro pode ser usado para criar funções de envelope para especificar prefixamentos a outros filtros (C-plugin). [YV12, YUY2, RGB]

  26.  
  27. AddGrain (por Tom Barry): AddGrain gera filme com granulação ou outros efeitos (como chuva) acrescentando ruído fortuito a um clipe de vídeo. Este ruído pode opcionalmente ser correlatado horizontal ou verticalmente para causar listras. [YV12]

  28.  
  29. BT709ToBT601 (por Tom Barry): Converte espaço de cor HDTV (BT.709) para SDTV (BT.601). [discussão] [YV12]

  30.  
  31. DctFilter (por Tom Barry): Reduz componentes de ruídos de alta freqüência com a Transformação de Co-seno Discreto e seu inverso.  Resulta num alto ganho de compressibilidade, quando usado no fim do script.  Altura/largura deve ser múltiplo de 16. discussão. [YV12, YUY2]

  32.  
  33. FrameDbl (por Tom Barry): Um duplicador de quadro de movimento compensado, feito a partir do STMedianFilter. [discussão] [YV12]

  34.  
  35. Undot (por Tom Barry): UnDot é um filtro mediano simples para remover pontos, que são píxeis órfãos perdidos e ruído de mosquito.  Basicamente, corta cada valor do píxel para ficar entre o mínimo e o máximo de seus oito circunvizinhos. [discussão]. [YV12, YUY2]

  36.  
  37. Chr (por WarpEnterprises): Permite a inclusão de Caractere ASCII e tempo inicial. Este plugin será uma função embutida a partir de v2.52.

  38.  
  39. DVinfo (por WarpEnterprises): Este filtro captura a informação de hora e data de gravação de um DV-AVI. Deve trabalhar com Tipo-1 e Tipo-2, AVI normal e openDML.

  40.  
  41. Zoom "Pan/Zoom/Rotate" (por WarpEnterprises): Um plugin para Panorama/Zoom/Girar  seu clipe. [RGB32]

  42.  
  43. WarpSharp, Xsharpen, UnsharpMask, KenKunNR, KenKunNRT, UVTimingH, UVTimingV, LoadAviUtlInputPlugin, LoadAviUtlFilterPlugin, ConvertYUY2ToAviUtlYC, ConvertAviUtlYCToYUY2, EraseGhost, SearchGhost, EraseGhostV, SearchGhostV, Auto24FPS, AutoDeint, FrameCache, AVIEncodeVideo, LoadPluginEx (por nosso amigo Japonês): Passado ao filtros de VirtualDub e AviUtl. Alguma documentação pode ser achada [aqui]. Você precisa copiar o [msvcp71.dll/msvcr71.dll] (Biblioteca Microsoft C Runtime, v7) ao seu diretório de sistema do windows . [YV12, YUY2]


Q3.6: Onde posso baixar utilitários para AviSynth?

A: Várias utilidades estão disponíveis:


Q3.7: Como converto entre os colorspaces?

A: Se você está usando mpeg2dec3 (o apropriado para AviSynth v2.5x) também pode usar as conversões disponíveis nesta dll (por exemplo quando você quer converter para RGB24) .  Ou usando o próprio AviSynth:

convertendo para YV12:
ConvertToYV12

convertendo para YUY2:
ConvertToYUY2

convertendo para RGB:
ConvertToRGB

Note que convertendo entre colorspaces não é totalmente sem perda e fazendo várias conversões para lá e para cá podem degradar seu sinal.  A primeira conversão ida e volta pode não ferir sua fonte, mas se usar três ou mais, pode.  Começando com a versão v2.03, há um ConvertBackToYUY2 que oferece melhor simetria se sua fonte RGB foi previamente convertida de YUY2.
 

Q3.8: Com o que/quando devo me preocupar quando o filtro X trabalha em RGB - ou espaço YUV?

A: A principal razão com que deve se preocupar é a melhoria em velocidade que você pode obter não mudando desnecessariamente entre colorspaces.  Se sua fonte é YV12 (ao codificar DVD por exemplo, ou capturar de fontes digitais) tente usar só filtros/plugins que trabalham com entradas YV12.  Por outro lado se sua fonte é RGB (por exemplo de capturas analógicas) tente só usar filtros/plugins que trabalham em espaço RGB.

Velocidade também é bastante diferente entre colorspaces diferentes, porque cada colorspace usa quantias diferentes de memória.  O colorspace mais lento normalmente é o RGB24, porque todo píxel tem um alinhamento estranho em memória, evite usar este modo.  O modo mais rápido normalmente é o YV12 (seguido pelo YUY2), porque dados usam menos da metade do espaço do RGB32.  Assim se você tiver que processar muito seu vídeo, tente usar ConvertToYV12 ou ConvertToYUY2 antes de efetuar sua filtragem.  Note que ConvertToRGB converte para RGB32 se a fonte é YV12/YUY2 - use ConvertToRGB32 para forçar uma conversão RGB24 para RGB32.

Você também deve considerar seu colorspace de destino.  Se planejar converter para DivX/XviD/Huffyuv no VirtualDub sem aplicar filtros, "Fast Recompress" entregará os dados YUY2 (ou dados YV12 se você usa VirtualdubMod) diretamente para o codec, economizando outra conversão de colorspace.  Por outro lado, se planejar o uso do TMPGEnc ou VirtualDub em modo "Full Processing", deve considerar entregar a fonte como RGB.

Q3.9: Como uso e onde consigo os plugins "Subtitler" e "Carregador BMP"?

A: Estes arquivos de dll são criados por DVD2SVCD e só ele os usa. Mas você também pode usar em AviSynth. Dê uma olhada nestes [artigos].
 

S4: Importar filtros do VirtualDub:
 

Q4.1: Onde posso baixar a mais recente versão de escritos que importam filtros de 
VirtualDub?

A: Os escritos do AviSynth estão na página ShareFunctions, ou você pode baixar um pacote chamado vdub_filtersv15.zip de http://forum.doom9.org/showthread.php?s=&threadid=23804 ou http://neuron2.net/hosted.html
 

Q4.2: Quais filtros são importados?

A: A maioria deles.  Leia a documentação correspondente disponível no arquivo zip.
 

Q4.3: Estes escritos trabalham em espaço RGB ou YUV?

A: Apenas em espaço RGB (RGB32).
 

Q4.4: Como faço um escrito?

A: Exemplo de escrito (este filtro do VirtualDub pode ser baixado da homepage Donald:

Smart Bob por Donald Graft:

function VD_SmartBob(clip clip, bool "show_motion", int "threshold", bool "motion_map_denoising")
  LoadVirtualdubPlugin("d:\bob.vdf", "_VD_SmartBob", 1)
  return clip.SeparateFields._VD_SmartBob(clip.GetParity?1:0,
    \  default(show_motion, false)?1:0, default(threshold, 10),
    \  default(motion_map_denoising, true)?1:0)
}

O plugin do VirtualDub é importado com o comando "LoadVirtualdubPlugin" .  O primeiro argumento dá o caminho do plugin, o segundo argumento o nome para o plugin que será usado no escrito e o terceiro é chamado preroll.

O preroll deve ser fixado com pelo menos o número de quadros que o filtro precisa para pré processar para encher seus buffers e atualizar sua variáveis internas. Este último argumento é usado em alguns filtros como: SmartBob, SmartDeinterlace, TemporalCleaner e outros.  A razão é que devido a arquitetura dos filtros do Virtual Dub os quadros futuros não podem ser acessados por um filtro.  Dividee informa: No diálogo "Add filter" de VirtualDub, alguns filtros têm um "Lag" (intervalo): valor, na sua descrição. Eu acho que é este o valor que deve ser usado como preroll.  Infelizmente, esta indicação nem sempre está presente.  Nesses casos você tem que adivinhar. Claro que você sempre pode perguntar para o criador do filtro.

O primeiro passo é descobrir a seqüência dos argumentos na última linha onde o clipe é retornado.  Configure o escrito em VirtualDub e selecione "Save processing Settings" em Arquivo do Menu ou pressione Ctrl+S.  Abra o Arquivo .vcf criado com um editor de texto e verá ver linhas assim:

VirtualDub.video.filters.Add("smart bob (1.1 beta 2)");
VirtualDub.video.filters.instance[0].Config(1, 0, 10, 1);

A ordem dos argumentos é a que deve ser usada no AviSynth.  Para achar a função dos argumentos, toque com eles no VirtualDub e examine as linhas resultantes.

O segundo passo é testar o filtro e compará-lo com o do próprio VirtualDub.  Para a programação em si você pode aprender muito olhando para o escrito que já está contido nos vdub_filters.avs.

Exemplo de escrito que usa a função VD_SmartBob:

Import("d:\vdub_filters.avs")
AviSource("d:\filename.avi")
ConvertToRGB32  # só quando necessário (mas não dói)
VD_SmartBob(1, 0, 10, 1)
ConvertBackToYUY2  # só quando necessário 

$Date: 2006/03/26 18:11:19 $