The Bald Avenger
2009-10-30 17:46:45 UTC
Hola a todos los presentes. Como últimamente no hay mucho movimiento
en este grupo (es un eufemismo...) lo crossputeo a es.charla.motor.
Digamos que se trata de editar un vídeo de carreras de coches, y
pelillos a la mar :-)
He estado un par de días volviéndome loco para conseguir editar un
vídeo FLV-H264 en VirtualDub, a base de instalar mil codecs con la
intención de usar Avisinth con Directshow, pero aunque he visto
muchos tutoriales no he conseguido que me abriera correctamente
el vídeo. Al final lo he conseguido usando plugins del Avisinth,
sin necesidad de tener instalado ningún codec directshow. Así que,
por un lado para no volverme loco la próxima vez que lo necesite,
por otro para compartirlo, y por otro para recibir críticas y/o
correcciones, he escrito este pequeño tutorial. Seguro que hay
algún error, o es posible hacerlo todo de una manera menos
rebuscada. Por eso se agradecerán comentarios.
Espero que resulte útil, ya que el contenedor FLV con vídeo en h264
y sonido aac es cada vez más común, por ejemplo en megavídeo, en
youtube hd, y en los vídeos hd descargados de la sexta (que para
estos últimos también hace falta un buen tutorial para conseguir
bajárselos...)
He subido a megaupload un pequeño vídeo por si alguien quiere
probar: http://www.megaupload.com/?d=J5LM4RZY
---------------------------cortar aquí------------------------------
Cómo trabajar en VirtualDub con un contenedor FLV que contenga vídeo
en H264 y audio en AAC (por ejemplo los descargados de megavideo).
Es bastante más sencillo de lo que parece, y con este método no es
necesario instalar ningún filtro Directshow, ni enguarrar el sistema
con codecs, salvo claro, los que quieras usar para guardar el vídeo
una vez procesado. Además solo usaremos software libre.
Usaremos Avisynth. Es un programa que a través de plugins, es capaz
de abrir audio y vídeo y actuar como "frameserver" para otros
programas. De este modo un programa -VirtualDub- que no sabe manejar
cierto tipo de archivos, los puede abrir, ya que los recibe ya
"interpretados" a través del Avisynth. Para ello creamos un script
con comandos que le dicen a Avisynth lo que tiene que abrir, y
posteriormente abrimos dicho script en VirtualDub. El script se
ejecuta y VirtualDub recibe los frames ya descomprimidos. Se me
perdone la simpleza, pero creo que así más o menos se entiende.
Programas necesarios:
- VirtualDub, obviamente. Descarga la última versión en
http://www.virtualdub.org
- FLV Extract http://www.moitah.net/ Lo descargamos y lo descomprimimos
donde más nos convenga.
- Avisynth http://avisynth.org/ Además de instalar el Avisynth,
deberemos meterle unos cuantos plugins. La ubicación de los plugins
por defecto será "C:\archivos de programa\AviSynth 2.5\plugins"
Vamos a trabajar con dos plugins de entrada, el BassAudio, y el
DGAVDec.
Para el BassAudio necesitaremos tres librerías: Bassaudio.dll, bass.dll
y Bass_aac.dll. Las dos últimas las descargaremos de http://www.un4seen.com/
Pinchamos en BASS (en mayúsculas en el lateral izquierdo de la página).
del Zip que nos descargará, descomprimiremos Bass.dll a la carpeta de
plugins de Avisynth. De la sección Addons de la misma página buscaremos
bass_aac. Del Zip que nos descargará, habremos de descomprimir bass_aac.dll
a la carpeta de plugins de Avisynth. Ya solo nos falta el plugin de entrad
de Avisynth propiamente dicho, que es bassaudio.dll. Lo encontraremos en el
paquete de BeHappy http://www.codeplex.com/BeHappy. En el zip que descargamos
buscamos la carpeta \BeHappy\Plugins y descomprimiremos bassaudio.dll a la
carpeta de plugins del Avisynth.
El DGAVDec es bastante más sencillo. Simplemente lo descargamos de su
web http://neuron2.net/dgavcdec/dgavcdec.html, el Zip que nos baja
lo descomprimiremos también en la carpeta de plugins de Avisinth.
Una vez que tenemos todo preparado, los pasos son de lo más sencillo.
Digamos que tenemos un vídeo llamado video.flv ubicado en C:\videos
1.- Primero tendremos que descomponer el video flv. Para eso abriremos
la ubicación donde hemos descomprimido el FLV Extract y ejecutaremos
FLVExtract.exe. A continuación abrimos en el explorador de windows
la carpeta c:\videos y arrastraremos video.flv a la ventana de
diálogo de FLVExtract. Automáticamente nos creará en c:\videos tres
archivos: video.264, video.aac y video.txt. Este último no nos
interesa, lo podemos borrar.
2.- Ahora abrimos la carpeta de plugins de Avisynth y ejecutamos
DGAVCIndex.exe. File/open y abrimos c:\videos\video.264. Le
damos a File/save project y guardamos como c:\videos\video.dga
3.- Ya lo tenemos todo listo, ahora solo hay que crear el script de
Avisynth y abrirlo en virtualdub. Para eso podemos usar el simple
notepad de windows, o usar un programa editor de scripts como es
el AVSEdit. El editor de scripts tiene la ventaja de que incorpora
un modo de preview, muy útil para depurar errores. Como el script
que vamos a crear es muy sencillo, no lo veo necesario. Así pues
creamos un nuevo documento de texto en c:\videos y lo llamamos
script.avs. Luego lo abrimos con el block de notas y le metemos
los comandos:
Loadplugin("C:\Archivos de programa\AviSynth 2.5\plugins\DGAVCDecode.dll")
Loadplugin("C:\Archivos de programa\AviSynth 2.5\plugins\BassAudio.dll")
AUDIO = BassAudioSource("video.aac")
VIDEO = AVCSource("video.dga")
AudioDub(VIDEO, AUDIO)
Notas: los comandos Loadplugin deben llevar obligatoriamente la ruta
absoluta a la dll apuntada. Los comandos BassAudioSource y AVCSource
pueden llevar solamente el nombre de archivo, siempre que los archivos
se encuentren en la misma carpeta que el script avs.
Guardamos, y abrimos VirtualDub. En File/open video file, seleccionamos
AVIFile input driver, y abrimos script.avs. Si todo ha ido bien
ya podemos trabajar el vídeo en VirtualDub como haríamos con cualquier
otro. Después lo guardaremos como avi, usando el codec de nuestra
preferencia.
---------------------------cortar aquí------------------------------
Espero que a alguien le sirva para algo, y si no, ahí queda para los
archivos de "Dejànews".
en este grupo (es un eufemismo...) lo crossputeo a es.charla.motor.
Digamos que se trata de editar un vídeo de carreras de coches, y
pelillos a la mar :-)
He estado un par de días volviéndome loco para conseguir editar un
vídeo FLV-H264 en VirtualDub, a base de instalar mil codecs con la
intención de usar Avisinth con Directshow, pero aunque he visto
muchos tutoriales no he conseguido que me abriera correctamente
el vídeo. Al final lo he conseguido usando plugins del Avisinth,
sin necesidad de tener instalado ningún codec directshow. Así que,
por un lado para no volverme loco la próxima vez que lo necesite,
por otro para compartirlo, y por otro para recibir críticas y/o
correcciones, he escrito este pequeño tutorial. Seguro que hay
algún error, o es posible hacerlo todo de una manera menos
rebuscada. Por eso se agradecerán comentarios.
Espero que resulte útil, ya que el contenedor FLV con vídeo en h264
y sonido aac es cada vez más común, por ejemplo en megavídeo, en
youtube hd, y en los vídeos hd descargados de la sexta (que para
estos últimos también hace falta un buen tutorial para conseguir
bajárselos...)
He subido a megaupload un pequeño vídeo por si alguien quiere
probar: http://www.megaupload.com/?d=J5LM4RZY
---------------------------cortar aquí------------------------------
Cómo trabajar en VirtualDub con un contenedor FLV que contenga vídeo
en H264 y audio en AAC (por ejemplo los descargados de megavideo).
Es bastante más sencillo de lo que parece, y con este método no es
necesario instalar ningún filtro Directshow, ni enguarrar el sistema
con codecs, salvo claro, los que quieras usar para guardar el vídeo
una vez procesado. Además solo usaremos software libre.
Usaremos Avisynth. Es un programa que a través de plugins, es capaz
de abrir audio y vídeo y actuar como "frameserver" para otros
programas. De este modo un programa -VirtualDub- que no sabe manejar
cierto tipo de archivos, los puede abrir, ya que los recibe ya
"interpretados" a través del Avisynth. Para ello creamos un script
con comandos que le dicen a Avisynth lo que tiene que abrir, y
posteriormente abrimos dicho script en VirtualDub. El script se
ejecuta y VirtualDub recibe los frames ya descomprimidos. Se me
perdone la simpleza, pero creo que así más o menos se entiende.
Programas necesarios:
- VirtualDub, obviamente. Descarga la última versión en
http://www.virtualdub.org
- FLV Extract http://www.moitah.net/ Lo descargamos y lo descomprimimos
donde más nos convenga.
- Avisynth http://avisynth.org/ Además de instalar el Avisynth,
deberemos meterle unos cuantos plugins. La ubicación de los plugins
por defecto será "C:\archivos de programa\AviSynth 2.5\plugins"
Vamos a trabajar con dos plugins de entrada, el BassAudio, y el
DGAVDec.
Para el BassAudio necesitaremos tres librerías: Bassaudio.dll, bass.dll
y Bass_aac.dll. Las dos últimas las descargaremos de http://www.un4seen.com/
Pinchamos en BASS (en mayúsculas en el lateral izquierdo de la página).
del Zip que nos descargará, descomprimiremos Bass.dll a la carpeta de
plugins de Avisynth. De la sección Addons de la misma página buscaremos
bass_aac. Del Zip que nos descargará, habremos de descomprimir bass_aac.dll
a la carpeta de plugins de Avisynth. Ya solo nos falta el plugin de entrad
de Avisynth propiamente dicho, que es bassaudio.dll. Lo encontraremos en el
paquete de BeHappy http://www.codeplex.com/BeHappy. En el zip que descargamos
buscamos la carpeta \BeHappy\Plugins y descomprimiremos bassaudio.dll a la
carpeta de plugins del Avisynth.
El DGAVDec es bastante más sencillo. Simplemente lo descargamos de su
web http://neuron2.net/dgavcdec/dgavcdec.html, el Zip que nos baja
lo descomprimiremos también en la carpeta de plugins de Avisinth.
Una vez que tenemos todo preparado, los pasos son de lo más sencillo.
Digamos que tenemos un vídeo llamado video.flv ubicado en C:\videos
1.- Primero tendremos que descomponer el video flv. Para eso abriremos
la ubicación donde hemos descomprimido el FLV Extract y ejecutaremos
FLVExtract.exe. A continuación abrimos en el explorador de windows
la carpeta c:\videos y arrastraremos video.flv a la ventana de
diálogo de FLVExtract. Automáticamente nos creará en c:\videos tres
archivos: video.264, video.aac y video.txt. Este último no nos
interesa, lo podemos borrar.
2.- Ahora abrimos la carpeta de plugins de Avisynth y ejecutamos
DGAVCIndex.exe. File/open y abrimos c:\videos\video.264. Le
damos a File/save project y guardamos como c:\videos\video.dga
3.- Ya lo tenemos todo listo, ahora solo hay que crear el script de
Avisynth y abrirlo en virtualdub. Para eso podemos usar el simple
notepad de windows, o usar un programa editor de scripts como es
el AVSEdit. El editor de scripts tiene la ventaja de que incorpora
un modo de preview, muy útil para depurar errores. Como el script
que vamos a crear es muy sencillo, no lo veo necesario. Así pues
creamos un nuevo documento de texto en c:\videos y lo llamamos
script.avs. Luego lo abrimos con el block de notas y le metemos
los comandos:
Loadplugin("C:\Archivos de programa\AviSynth 2.5\plugins\DGAVCDecode.dll")
Loadplugin("C:\Archivos de programa\AviSynth 2.5\plugins\BassAudio.dll")
AUDIO = BassAudioSource("video.aac")
VIDEO = AVCSource("video.dga")
AudioDub(VIDEO, AUDIO)
Notas: los comandos Loadplugin deben llevar obligatoriamente la ruta
absoluta a la dll apuntada. Los comandos BassAudioSource y AVCSource
pueden llevar solamente el nombre de archivo, siempre que los archivos
se encuentren en la misma carpeta que el script avs.
Guardamos, y abrimos VirtualDub. En File/open video file, seleccionamos
AVIFile input driver, y abrimos script.avs. Si todo ha ido bien
ya podemos trabajar el vídeo en VirtualDub como haríamos con cualquier
otro. Después lo guardaremos como avi, usando el codec de nuestra
preferencia.
---------------------------cortar aquí------------------------------
Espero que a alguien le sirva para algo, y si no, ahí queda para los
archivos de "Dejànews".
--
SaludOS/2, The Bald Avenger.
Para email, click: http://shorl.com/gebyprafevito
... ¿Dejar de fumar? Es fácil: Yo ya lo he hecho cien veces.
SaludOS/2, The Bald Avenger.
Para email, click: http://shorl.com/gebyprafevito
... ¿Dejar de fumar? Es fácil: Yo ya lo he hecho cien veces.