AssumeFPS
(clip, float fps, bool "sync_audio")
AssumeFPS
(clip, int numerator [, int denominator], bool "sync_audio")
AssumeFPS
(clip1, clip2, bool "sync_audio")
Os filtros AssumeFPS
mudam a taxa de quadro sem mudar a contagem
(causando o vídeo a tocar mais rápido ou mais lento). Só fixa o parâmetro
framerate
Se sync_audio for true, também muda a taxa de amostra do áudio
pela mesma relação, e o lance do resultado do áudio é trocado.
Este também é um método para mudar apenas a taxa de amostra só do áudio.
Na v2.55, se clip2 está presente, o framerate de clip1 será ajustado para igualar o do clip2. Isto é útil quando você quiser unir dois clipes com framerate ligeiramente diferentes.
Exemplos de conversão de Telecine PAL +4%:
AVISource("FILM_clip.avi") # Pegue um clipe de 24 fps LanczosResize(768,576) # Dimensione para tamanho de quadro de píxel quadrado PAL. AssumeFPS(25, 1, true) # Converta a taxa de quadro a PAL, também ajuste o áudio. SSRC(44100) # Restabeleça a taxa de amostra do áudio a uma taxa normal.
A velocidade +4% é convencionalmente usada para exibir filmes de 24 fps na televisão PAL. O leve aumento no lance e tempo é aceito sem problemas por espectadores de material PAL.
ChangeFPS
(clip, float fps, bool "linear")
ChangeFPS
(clip, int numerator [, int denominator], bool "linear")
ChangeFPS
(clip1, clip2, bool "linear")
ChangeFPS
muda a taxa de quadro apagando-o ou duplicando-o.
Até a v2.05, o vídeo é truncado ou completado para preservar
sua velocidade e tempo de playback (o número de quadros não foi mudado). Em
versões posteriores, o comportamento foi mudado e o número de quadros
aumentado ou diminuído como em ConvertFPS
.
Na v2.54, uma opção linear = true/false está incluída
para Changefps
. Isto faz o AviSynth pedir quadros de um modo
linear, saltando-os. O padrão é true,
Na v2.56, se clip2 está presente, o framerate de clip1 será ajustado para igualar ao do clip2.
Exemplos de conversão de PAL->NTSC:
AVISource("PAL_clip.avi") # Pegue o clipe Bob(height=480) # Separe os campos e interpole toda a altura. BicubicResize(640,480) # Dimensione para tamanho de quadro píxel quadrado NTSC. ChangeFPS(60000, 1001) # Converta taxa de campo para NTSC, duplicando os campos. SeparateFields.SelectEvery(4,0,3) # Desfaça Bob, primeiro campo igual. Use SelectEvery(4,1,2) primeiro para campo diferente. Weave # Feche o desfazer Bob.
O efeito é semelhante ao telecine 3-2 pull down (puxe p/baixo). Espectadores de material PAL podem notar uma falha de movimento que os espectadores de material NTSC ignoram prontamente em filme telecinado.
ConvertFPS
(clip, float new_rate, int "zone", int "vbi")
ConvertFPS
(clip, int numerator [, int denominator], int "zone", int "vbi")
ConvertFPS
(clip1, clip2, int "zone", int "vbi")
Requer entrada YUY2.
O filtro tenta converter a taxa de quadro do clipe para clip to new_rate sem perder ou inserir quadros, proporcionando uma conversão suave com resultados semelhantes a essas caixas conversoras. A produção terá (quase) a mesma duração do clipe, mas o número de quadros mudará proporcional à relação do objetivo e taxas de quadro da fonte.
Na v2.56, se clip2 estiver presente, o framerate do clip1 será ajustado para igualar ao do clip2.
O filtro tem dois modos operacionais. Se o argumento opcional zone não estiver presente, misturará quadros de vídeo adjacentes, com um peso fator de mistura proporcional ao tempo relativo dos quadros ("Blend Mode"). Se zone estiver presente, trocará de um quadro de vídeo para o próximo ("Switch Mode") sempre que um quadro fonte novo começa, quer dizer, normalmente em algum lugar no meio de um quadro designado. "Switch Mode" assume que a produção será mostrada em uma TV onde cada quadro é escaneado de cima para baixo. O parâmetro zone especifica a altura da região de transição na qual o quadro atual será misturado ao próximo.
Blend Mode causará visível borrado de movimento, embora leve. Este é um artefato típico de conversão de taxa de quadro e pode ser visto em fitas de vídeo comerciais bem como em programas de TV. Ao trabalhar com vídeo entrelaçado, é importante deixar o filtro operar em campos individuais, não nos quadros entrelaçados. (Veja exemplos abaixo).
Switch Mode é uma tentativa para evitar movimento borrado, mas vem às custas de leve luz piscante e objetos de movimento. Panoramas horizontais e verticais podem mostrar uma leve oscilação. Quadros fixos desta conversão mostram linhas verticais "quebradas" ou "curvadas" em cenas de movimento. Transições de cena podem acontecer no meio de um quadro. Não obstante, os resultados parecem menos borrados que em "Blend Mode", Modo de Mistura.
Nenhum modo é perfeito. Qual a escolher depende da preferência pessoal e na metragem a ser convertida. Modo de interruptor "Switch Mode" provavelmente só é satisfatório se a produção será mostrada em uma TV, não na tela do computador.
Conversão de taxa de quadro é difícil por natureza. Este filtro implementa dois métodos comuns usados por sistemas de conversores de nível Prosumer comerciais. Os resultados são tipicamente bastante bons. Sistemas mais sofisticados empregam algoritmos de interpolação de movimento que são difícil de acertar, mas se correto, dá resultados superiores.
A metragem convertida com este filtro não deve ser convertida novamente. Blurriness* constrói depressa em gerações subseqüentes.
Os dados de áudio não são tocados por este filtro. O áudio permanecerá sincronizado, embora o comprimento dos dados podem diferir ligeiramente dos dados de vídeo depois da conversão. Isto é porque a produção pode conter só um número inteiro de quadros. Este efeito será mais pronunciado em clipes mais curtos. A diferença em comprimento deve ser ignorada.
Parâmetros:
new_rate | Taxa de quadros designada. Pode ser inteiro ou número de ponto flutuante. Em Modo de Mistura, "Blend Mode", new_rate deve ser pelo menos 2/3 (66.7%) da taxa de quadros da fonte, ou terá um erro. Isto é para prevenir salto de quadros. Se você precisa reduzir a velocidade da taxa de quadro mais que isso, use Modo de Interruptor, "Switch Mode" |
zone | (Opcional) Se especificado, põe o filtro em Modo de Interruptor. Número inteiro maior ou igual a zero. Se zero, o filtro executará um interruptor duro, quer dizer, exibirá o próximo quadro imediatamente abaixo da linha do interruptor. Se maior que zero, especifica a altura (em linhas) da zona de transição onde um quadro é gradualmente misturado ao próximo. Para vídeo de tamanho total (480/576 linhas ativas) zone=80 rende bons resultados. A transição é da mesma maneira feita como em PeculiarBlend (). zone deve ser menos ou igual ao número de linhas do quadro designado que corresponde à duração do quadro fonte. Isto é tipicamente 5/6 ou 6/5 da altura do quadro designado, quer dizer, umas cem linhas. Um erro acontece se colocar um valor maior. |
vbi | (Opcional) Em Modo de Interruptor, especifica que o filtro deve aplicar uma correção de tempo para o intervalo de apagamento vertical (VBI). Número inteiro maior que zero, indicando a altura do VBI dos quadros designados, em linhas. Tipicamente vbi=49 para PAL e vbi=45 para NTSC, mas estes valores não são críticos. Ignorado em Modo de Mistura. |
Exemplos de conversão NTSC->PAL:
AVISource("NTSC_clip.avi") # Pegue o clipe Bob(height=576) # Separe os campos e interpole toda a altura. BicubicResize(768,576) # Dimensione para tamanho de quadro píxel quadrado PAL. (Use 720,576 para CCIR). ConvertFPS(50) # Converta taxa de campo para PAL, com Modo de Mistura. SeparateFields.SelectEvery(4,0,3) # Desfaça Bob, primeiro campo igual. Use SelectEvery(4,1,2) primeiro para campo diferente. Weave # Feche o desfazer Bob.
Este exemplo também trabalhará com material NTSC baseado em quadro, mesmo com filme telecinado. Para material de filme, porém, você terá melhor resultado usando um filtro de telecine inverso e acelerando a taxa de quadro de 23.976 para 25fps.
Nem todos os valores de parâmetro são conferidos em sanidade.
$Date: 2006/03/26 18:11:19 $ Portuguese translation by RoLon