jueves, 6 de octubre de 2011

convertir ogv sin perder calidad

Hola a todos.


Intentando pasar un vídeo .ogv a .avi me encontré con el comando:
con ffmpeg:

ffmpeg -i entrada.ogv -vcodec mpeg4 -sameq -acodec libmp3lame salida.avi


----------------------------------------------------------------------------

con mencoder:
mencoder archivo.ogv -ovc lavc -oac mp3lame -o archivo.avi

pero la calidad era penosa. Investigando conseguí mejorar el comando:

mencoder archivo.ogv -ovc lavc -lavcopts vbitrate=**** -oac mp3lame -lameopts cbr br=*** -o archivo.avi


-lavcopts vbitrate=**** define el bitrate de video en kbits
-lameopts cbr indica que el bitrate de audio sea constante y br=*** define ese valor en kbits
para tener una idea de los valores a introducir en lugar de los asteriscos se puede usar ffmpeg

ffmpeg -i archivo.ogv

al final nos saldrá algo como esto:

Input #0, ogg, from 'archivo.ogv':
Duration: 00:03:53.68, start: 0.000000, bitrate: 13248 kb/s
Stream #0.0: Video: theora, yuv420p, 720x576, PAR 1066666:1000000 DAR 533333:400000, 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: vorbis, 48000 Hz, stereo, s16, 128 kb/s

de aquí sacamos el bitrate del archivo 13248 kb/s y el de audio 128 kb/s

ATENCIÓN: el bitrate del archivo es la suma del bitrate de video más el de audio, con lo que para averiguar el bitrate de vídeo habrá que hacer una sencilla resta. Así, el comando anterior para este ejemplo quedaría:
13248
128
_____ -
13120

mencoder archivo.ogv -ovc lavc -lavcopts vbitrate=13120 -oac mp3lame -lameopts cbr br=128 -o archivo.avi

No hay comentarios: