Primero que nada quiero agradecer a
Por pasarme el link que voy a citar como fuente de este post.
Es necesario tener instalado lame ffmpeg y mencoder
En caso de no tenerlos en ubuntu instalar con
sudo apt-get install mencoder ffmpeg lame
Introduccion
Una conversión de formatos consiste en transformar el contenido de los datos multimedia de un tipo de fichero a otro. En los casos de ficheros multimedia, esta conversión suele estar asociada con una pérdida de datos por lo que es importante asegurarse de que esta conversión es necesaria.
Formatos de audio
MP3 -> MP3
Esto es para bajar la calidad de un MP3:
lame -b 64 archivo_origen.mp3 archivo_destino.mp3
64 será el nuevo bitrate del archivo. Se puede usar cualquiera de los siguientes valores: 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320. A mayor bitrate, mayor será la calidad de audio (y mayor el tamaño del archivo).
MP3 -> OGG
Se requiere el programa mp32ogg
sudo aptitude install mp32ogg
Para convertir
mp32ogg music.mp3 music.ogg
Para convertir toda la carpeta
mp32ogg *.mp3 *.ogg
A continuación se enumeran algunas conversiones comunes en ficheros de sonido empleando Ffmpeg.
WMA -> MP3
Tras el parametro ab especificaremos el bitrate del MP3 (192 en el ejemplo).
ffmpeg -i ficheroEntrada.wma -f mp3 -ab 192 ficheroSalida.mp3
MP3 -> AMR
ffmpeg -i music.mp3 -acodec amr_nb -ar 8000 -ac 1 -ab 32 music.amr
WAV -> AMR
ffmpeg -i music.wav -acodec amr_nb -ar 8000 -ac 1 -ab 32 music.amr
Varios -> MP3
Extrae el audio de un fichero MPEG, avi, etc y lo pasa a MP3 (donde -ab es la tasa de bits en bps)
ffmpeg -i peliculax.avi -ab 128k audio.mp3
MIDI -> WAV
timidity -Ow -s 44100 -o output.wav input.mid
MIDI -> OGG
timidity -Og -s 44100 -o output.ogg input.mid
Formatos de vídeo
Varios -> AVI
mencoder original.xxx -o salida.avi -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1000
Este comando crea el archivo salida.avi, copiando el codec de audio y usando el codec mpeg4 para el vídeo, con una tasa de bits variable de 1000.
AVI -> FLV
ffmpeg -i movie.avi -acodec mp3 -ar 11025 movie.flv
Desde la versión 9.04 hay que instalar el paquete libavcodec-unstripped-52 y reemplazar '-acodec mp3' por '-acodec libmp3lame' en las opciones del comando.
AVI -> VCD
Añadiendo la opción -hq usa alta calidad.
ffmpeg -i myfile.avi -target pal-vcd myfile_vcd.mpg
AVI -> DV
Este es el formato Digital Video, el mismo que produce una cámara de vídeo digital y es el que se puede usar para editar con Kino.
ffmpeg -i pelicula.avi -target pal-dv pelicula.dv
Esto me da unos errores de sincronismo del audio que no veo que se noten. Si quieres evitarlos tendrás que hacerlo de esta forma:
mencoder pelicula.avi -ovc lavc -oac pcm -o pelicula-new.avi
ffmpeg -i pelicula-new.avi -s pal -r pal -ac 2 -ar 48000 pelicula.dv && rm pelicula-new.avi
Otra forma de hacerlo:
ffmpeg -i pelicula.avi -vcodec dvvideo -acodec copy -f dv pelicula.dv -hq
Kino también lee el formato AVI generado de esta forma (por ejemplo a partir de un FLV):
mencoder -oac mp3lame -ovc xvid -of avi -xvidencopts bitrate=1350 -o output.avi input.flv
varios -> PNG
ffmpeg -i swing.avi -vcodec png -vframes 1 -an -f rawvideo -s 320x240 swing1.png
RMVB -> AVI
mencoder -oac mp3lame -lameopts cbr=128 -ovc xvid -xvidencopts bitrate=1200 video_entrada.rmvb -o video_salida.avi
varios -> 3GP
ffmpeg -i archivo.mpeg -s qcif -r 12 -ac 1 -ar 8000 -b 30 -ab 12 salida.3gp
O también con más calidad:
ffmpeg -i archivo.mpeg -s qcif -r 15 -ac 1 -ar 8000 -b 256000 -ab 15 salida.3gp
varios -> XviD
ffmpeg -i pelicula.mpg -acodec libmp3lame -vcodec libxvid -b 2200k -bt 900k pelicula.avi
Donde -b 2200k indica la tasa de bits variable en kbits/seg y -bt 900k indica el margen de variabilidad (±800 kbits/s)
varios -> FLV
ffmpeg -i pelicula.mpg -vcodec flv -y pelicula.flv
El fichero resultante no contiene correctamente la información de meta datos. Esto implica que cuando utilices el fichero en un visualizador de videos Flash como Flash Video Player el fichero se verá correctamente pero la barra de progreso no se actualizará. Para arreglar esto usa la utilidad flvtool2 que la encontrarás en http://inlet-media.de/flvtool2. Está hecha en Ruby de modo que tendrás que instalar el paquete correspondiente. Se usa así:
flvtool2 -U pelicula.flv
También tenemos otra utilidad llamada FLV MetaData Injector que aunque sea para Windows, funciona perfectamente con Wine (por lo menos la versión de línea de comandos). Se usa así:
wine flvmdi.exe pelicula.flv
Otra forma de convertir a formato FLV es usando Memcoder:
mencoder pelicula.avi -o pelicula.flv -of lavf -oac mp3lame -lameopts br=32 -af lavcresample=22050 -srate 22050 -ovc lavc -lavcopts vcodec=flv:vbitrate=340:autoaspect:mbd=2:trell:v4mv -vf scale=320:24
JPG -> DivX
mencoder -mf on:w=800:h=600:fps=0.5 -ovc divx4 -o output.avi *.jpg
Así te muestra una foto cada dos segundos, si quieres cada cuatro segundos deberías poner 0.25 en fps.
Si este comando no te funciona prueba con
mencoder "mf://*.jpg" -mf fps=0.25 -vf scale=480:360 -o output.avi -ovc lavc -lavcopts vcodec=mpeg4
Con lo que obtendrás un video de todos los archivos jpg ubicados en el path desde el cual lanzas el comando y que te muestra 1 foto cada 4 segundos
Incluir subtítulos en un vídeo
mencoder -ovc lavc -oac mp3lame pelicula.avi -o pelicula_con_subtitulos.avi -sub subtitulos.srt
Crear un GIF animado desde un vídeo de Youtube
Requiere youtube-dl y mplayer:
Para instalar:
sudo apt-get install youtube-dl mplayer
url=http://www.youtube.com/watch?v=V5bYDhZBFLA
youtube-dl -b $url
mplayer $(ls ${url##*=}*| tail -n1) -ss 00:57 -endpos 10 -vo gif89a:fps=5:output=output.gif -vf scale=400:300 -nosound
Convertir un video al formato OGV Theora
Ogg Theora es el codec de video pre instalado por defecto en ubuntu, por lo que no necesitaras instalar algún pack de codec para reproducirlos en ubuntu (esa es la ventaja de theora). A continuación se muestran algunos ejemplos de conversiones de vídeo empleando ffmpeg2theora, para instalarlo, abrimos un terminal(aplicaciones>accesorios>terminal) y escribimos:
sudo aptitude install ffmpeg2theora
Ffmpeg2theora es un programa de comandos (no grafico), por lo que todo se usa desde el terminal, el video que quieres convertir tiene que encontrarse en la carpeta home del usuario.
cualquier formato de video -> Ogg Theora
ffmpeg2theora videoclip.extensión
esto creará un archivo Ogv Theora llamado videoclip.ogv. Para codificarlo con otra calidad, digamos calidad de video: 7 y calidad de audio: 3:
ffmpeg2theora -v 7 -a 3 videoclip.extensión
también puedes usar el v2v Presets para codificar tu video
ffmpeg2theora -p preview videoclip.dv
o
ffmpeg2theora -p pro videoclip.dv
que la codificacion del video comienze desde el segundo 10 y termine en el segundo minuto del video
ffmpeg2theora -s 10 -e 120 videoclip.extensión
que el britrate de video sea 512 y el de audio 96
ffmpeg2theora -V 512 -A 96 videoclip.extensión
que el video se re dimensione a 640x480
ffmpeg2theora -x 640 -y 480 videoclip.extensión
optimizar el tamaño del video
ffmpeg2theora --optimize videoclip.extensión
especificar nombre de salidad (video ya codificado)
ffmpeg2theora -o nombre-alternativo videoclip.extensión
como es obvio se puede usar los comandos anteriores en una sola linea
ffmpeg2theora -s 10 -e 120 -V 512 -A 96 x 640 -y 480 --optimize -o nombre-alternativo videoclip.extensión
Fuente: