AviSynth 2.5 Comenzando
Básicamente, AviSynth trabaja de la siguiente manera : Primero creamos un simple documento de texto con comandos especiales, llamado SCRIPT. Estos comandos hacen referencias a uno o mas vídeos y filtros que deseamos correr en ellos. Entonces abrimos una aplicación de vídeo, tal como VirtualDub, y abrimos el archivo de vídeo. Entonces es cuando AviSynth entra en acción. Este abre el vídeo al cual nos referimos en el SCRIPT, corre los filtros específicos, y alimenta la salida de la aplicación de Vídeo. La aplicación, sin embargo, no conoce que AviSynth esta trabajando en el fondo. En vez de ello, la aplicación piensa que esta operando directamente un filtro de un archivo AVI que reside en el disco duro.
Software a utilizar VirtualDub Mod 1.5.10.2 (build 2542) http://sourceforge.net/projects/ virtualdubmod/files/
AVS Edit 1.1.0.0 http://www.softpedia.com/progDownload/AVSEditDownload-100717.html
Media Player Classic Version 6.4.9.1 http://sourceforge.net/projects/ guliverkli/ http://www.abcdatos.com/programas/programa/z4140.html
AviSynth 2.58 http://sourceforge.net/projects/avisynth2/files/AviSynth% 202.5/AviSynth%202.5.8/
Una vez descargados los programas procedemos a instalarlos
AviSynth es el programa principal, una vez instalado en nuestra PC, debemos tener en el menu inicio de programas la siguiente carpeta :
1
VirtualDub Mod , es una aplicacion de video, que le sirve como Interfaz grafica (GUI) a AviSynth. Una vez instalado debemos contar con la siguiente carpeta
2
Media Player Classic , es otra aplicacion de video , que le sirve a AviSynth como interfaz grafica (GUI).
VENTANA DE MEDIA PLAYER CLASSIC
AVS Edit , es un editor de Scrips, especializado en scripts para AviSynth, facilita mucho la labor de elaborar el Script. y nos permite una previsualizacion del script a traves de una aplicacion de video.
VENTANA DEL PROGRAMA AVSEdit 3
Para configurar la aplicacion de video en AVSEdit hacemos lo siguiente :
Damos clic en el menu a Extras-Options.
En la ventana Options , damos clic sobre External Preview 4
En el explorador que se apertura , buscamos el ejecutable de la aplicacion de video (en nuestro caso utilizaremos VirtualDub Mod) Esto nos permitira terminado de elaborar el Script en AVSEdit, podamos visualizar el video a traves de VirtualDub Mod. (Opcion del menu ExtrasExternal Preview) Cabe señalar que el software que estamos utilizando es del tipo freeware.
Todo a quedado listo para empezar a elaborar nuestro primer Script.
EDICION LINEAL Hagamos nuestro primer Script , algo sencillo , sin expresiones o variables complicadas. 5
En scripts sencillos es mas facil emplear el Block de notas de windows para realizarlo. Abrimos el bloc de notas y colocamos lo siguiente en una simple linea de texto : Version Luego salvamos nuestro archivo como Test1.avs
Hecho esto, abrimos Media Player Classic y cargamos nuestro archivo test1.avs como si fuera un archivo multimedia.
6
Vemos un clip de video de 10 segundos que nos muestra una imagen fija en la cual vemos la version de AviSynth con la cual estamos trabajando, su autor y la direccion de la pagina web. Version , es lo que se llama un “filtro fuente” significa que genera un clip en vez de modificar alguno. El primer comando en un script de AviSynth sera siempre un “filtro fuente”
Empleemos una segunda forma de hacer nuestro primer script, que es la que emplearemos la mayor parte de las veces, conforme los scrips se hagan mas complicados. Para ello abrimos AVS Edit, para crear el script.
7
Aperturado AVS Edit , hacemos clic sobre la pestaña Filters (Filtros), situada en la parte inferior izquierda del programa y luego hacemos doble clic sobre Version , en la lista de filtros, situada encima de la pestaña.
Esto da origen a que se cree una linea en la ventana de la izquierda del programa, con el texto : Version . Hecho esto vamos al menu y damos 8
clic sobre File-Save as.. esto apertura el explorador en donde buscamos la carpeta de salida y colocamos test1 como nombre del archivo, ya no colocamos .avs pues el programa salva todos los archivos con esa terminacion. Luego aperturamos VirtualDub Mod y cargamos al programa nuestro archivo test1.avs como si se tratara de un archivo multimedia.
Vemos el mismo clip de video anterior de 10 segundos que nos muestra una imagen fija en la cual vemos la version de AviSynth con la cual estamos trabajando, su autor y la direccion de la pagina web. 9
Hemos pues empleado dos caminos para crear y abrir nuestro primer script: Primero utilizamos el Bloc de notas para crear el script y luego Media Player Classic para visualizar su efecto. Luego utilizamos AVS Edit para crear el script y luego VirtualDub Mod para visualizar su efecto.
Hagamos un nuevo script (con el Bloc de notas) el cual salvaremos como test2.avs :
La diferencia entre este segundo script y el primero es que le hemos agregado una fila con el siguiente texto : ReduceBy2 ReduceBy2 , es un filtro de transformacion, significa que toma el clip previo y lo modifica de alguna forma (en este caso lo reduce a la mitad del tamaño) , podemos encadenar juntos varios filtros de transformacion y luego ver sus efectos en VirtualDub Mod. Abrimos ahora el script test2.avs en VirtualDub Mod
10
Podemos apreciar que el video ha sufrido una reduccion de tamaño.
11
Hagamos un nuevo script (con AVS Edit) agregandole una tercera linea al anterior : FadeOut (10) , con este filtro , haremos que el video se disuelva al negro al final del mismo. Aperturamos AVS Edit, y hacemos clic sobre File-Open Script (ArchivoAbrir Script) , en el explorador que se apertura buscamos el script test2.avs y lo aperturamos. Luego en la pestaña Filters , buscamos en la lista de filtros Fade Out y hacemos doble clic sobre el, esto hace que se coloque el texto en la ventana de la izquierda.
Entre los parentesis al final de FadeOut colocamos 10.
12
El filtro FadeOut tiene un argumento numerico, el cual indica el numero de cuadros en el cual se va a disolver las letras (Fade).
Luego vamos al menu y damos clic sobre Extras-External Preview , lo que hace que se aperture VirtualDub Mod (al principio configuramos AVSEdit para que tenga a VirtualDub Mod como la aplicacion para probar las modificaciones de los scripts en el video)
En VirtualDub Mod , reproducimos el video y veremos como casi al final del mismo las letras en el video se van desvaneciendo suavemente al negro (Efecto de FadeOut) . Luego volvamos a AVSEdit y salvemos el Script como test3
13
Toma bastante tiempo antes de que se empiezen a disolver las letras, entonces recortemos el clip para reducir la espera. Mantengamos solamente los cuadros 120 a 150 para ello emplearemos el filtro Trim . En el nuevo script tambien utilizaremos el caracter # que sirve para agregar comentarios (hasta el final de la linea en la cual se ha insertado el caracter) . AviSynth ignorara completamente esta linea.AviSynth empieza a contar los cuadros de 0 , de manera que 120 corresponde al cuadro 119. El filtro Trim tiene dos argumentos, separados por una coma, los cuales indican el primero y ultimo cuadro a mantener en el clip. Si ponemos 0 para el ultimo cuadro, es lo mismo que decir a AviSynth hasta el fin del clip, luego si solo queremos remover los primeros 119 cuadros del clip deberiamos usar Trim(120,0). Vayamos pues a AVSEdit y creemos nuestro nuevo Script.
14
Finalmente salvemos nuestro script como test4.avs Ahora agregemos una nueva fila con el filtro ShowFrameNumber , el cual imprime el numero de cuadro dentro de cada cuadro del clip
Ahora probemos nuestro script, haciendo clic sobre Extras-External Preview, lo que nos apertura VirtualDub Mod
Reproducimos en VirtualDub Mod el clip hasta el final y veremos la numeracion sucesiva de los cuadros hasta llegar al 31 , que es el ultimo cuadro. Luego salvemos nuestro script en AVSEdit como test4.
15
EDICION NO LINEAL Continuemos con la edicion no lineal, hagamos un archivo .avs con el siguiente codigo en el :
Ahora veamos el resultado con el visor externo (VirtualDubMod)
Tenemos un video de salida con tres lineas identicas de la version de informacion. una debajo de la otra. En vez de utilizar numeros o cadenas como argumento, StackVertical toma el clip de video como argumento. En este script, el filtro Version esta siendo llamado tres veces. En cada oportunidad retorna una copia de la version del clip. Uno de los filtros mas utiles de este tipo es UnalignedSplice, el cual une los clips de video de principio a fin. El script que haremos a continuacion carga dos archivos AVI y los une.
16
Podemos usar el operador + como una forma corta para UnalignedSplice
Ahora supongamos que tenemos un clip con video y audio separados, con el filtro AudioDub , podemos juntarlos (Multiplexarlos).
17
Algunas reglas de escritura de los scripts para Avisynth : -Para incluir comentarios : el caracter # se utiliza para incluir comentarios, AviSynth ignorara cualquier cosa que escribamos desde este caacter al final de la linea. -Ignora diferencia entre mayusculas y minusculas, las dos formas de escribir el filtro, que vemos a continuacion son lo mismo para AviSynth : AviSOUrce o aVIsource . -Si colocamos \ al final de una linea y continuamos en la siguiente,
AviSynth reconocera todo como una sola linea.
FILTROS AVISYNTH FILTROS DE FUENTES PARA PRODUCIR UN CLIP AviSource , AviFileSurce y Open DML Source .
AviSource toma como argumento uno o mas nombres de archivos entre comillas, y lee los archivos usando la interfaz Video-for-Windows “AVIFile” o el codigo built-in OpenDML de AviSynth (tomado desde VirtualDub) . Este filtro puede leer cualquier archivo que tenga un controlador AVIFile. Esto incluye no solo archivos, tambien archivos WAV, archivos AVS (AviSynth script) y archivos VDR (VirtualDub frameserver). Si le damos multiples nombre como argumento, el clip 18
podra ser unido con UnalignedSplice. El argumento bool es opcional y por defecto es “true” (Verdadero). El filtro AviSource examina el archivo y determina su tipo y pasa a un controlador AVIFile o OpenDML segun sea el caso. En caso de que se presenten problemas con uno u otro controlador, podemos usar los filtros OpenDMLSource o AviFileSource los cuales fuerzan al uso de uno u otro controlador. Hay que tener en cuanta que para archivos AVI mayores a 2 GB es necesario usar el controlador de OpenDML, asimismo que el controlador AVIFile es el unico que puede abrir otros tipos de archivos tales como WAV, VDR y AVS. El parametro pixel_type (por defecto “YV12”) permite seleccionar el formato de salida de el descompresor. Valores validos son "YV12", "YV411", "YV16", "YV24", "YUY2", "Y8", "RGB32" y "RGB24" , este paametro no tiene ningun efecto si el video tiene un formato descomprimido. Nota : Cuando cargamos un clip DivX en AviSynth v2.5 algunas veces el color puede aparecer distorsionado (el chroma de los canale U y V estan intercambiados), esto debido a un error en DivX (Versiones 5.02 y anteriores) Podemos usar SwapUV para corregirlo. Se a agregado una opcion fourCC desde la version 2.55 . Podemos usar esta para forzar a abrir el archivo AVI usando un codec diferente al que tomo el archivo AVI. Ejemplos :
Los dos scripts de arriba son similares, sirven para aperturar el archivo avi: 03 AVI 19
El script de arriba nos da un video sin audio , esto se logra al incluir false como argumento en el filtro.
El script de arriba nos indica que usa RGB24 , como descompresor . Por defecto utiliza YV12.
Abrir el mismo achivo del primer script de la serie de ejemplos con AVIFileSource.
20
Abrimos el mismo archivo , ahora con el filtro OpenDMLSource. Apreciamos una imagen del archivo que nos ha servido de ejemplo :
EDUARDO PONCE
[email protected] Setiembre 2009 Lima - Peru
21