Jump to content

Ffmpeg, como usarlo


 Share

Recommended Posts

Ffmpeg es un programa sin interfaz gráfica que permite convertir o transformar entre formatos multimedia, tanto de video como de audio. Aunque existen otros programas, algunos sin necesidad de usar comandos, es una de las opciones con más posibilidades y es muy rápida.

 

Quién no lo tenga (que es raro, ya que lo utilizan muchos programas), teclea:

sudo apt-get install ffmpeg
O para la última versión desde: http://www.ffmpeg.org/

Esta es una recopilación de ejemplos de cosas útiles que se pueden hacer con ffmpeg, como puede ser convertir vídeos para PSP, iPod o iPhone, extraer el audio de un vídeo o extraer imágenes de un vídeo.

 

-Obtener información de un vídeo

 ffmpeg -i video.avi
Cambiar el formato de un vídeo y mantenerlo con la misma calidad (útil por si la tele o un programa no nos reproduce un formato), no funciona con todos los formatos:

ffmpeg -i  origen.avi -vcodec copy -acodec copy salida.mkv
-Combinar una serie de imágenes en un vídeo

ffmpeg -f image2 -i imagen%d.jpg video.mpg
Con este comando convertiríamos todas las imágenes del directorio actual (con nombres imagen1.jpg, imagen2.jpg, etc…) en un video llamado video.mpg.

Convertir un vídeo en imágenes

ffmpeg *i video.mpg imagen%d.jpg
Con este comando se crearan varias imágenes imagen1.jpg, imagen2.jpg, … Para las imágenes resultantes se pueden usar los formatos PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF o SGI.

 

Convertir un vídeo para verlo en el iPod/iPhone

ffmpeg -i entrada.avi input -acodec aac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320×180 -title X salida.mp4
* Video original: entrada.avi[

* Codec de audio: aac

* Bitrate del audio: 128kb/s

* Codec de vídeo: mpeg4

* Bitrate del vídeo: 1200kb/s

* Tamaño del vídeo: 320×180

* Vídeo generado: salida.mp4

 

Convertir un vídeo para verlo en la PSP

ffmpeg *i entrada.avi *b 300 *s 320×240 *vcodec xvid *ab 32 *ar 24000 *acodec aac salida.mp4
* Video original: entrada.avi

* Codec de audio: aac

* Bitrate del audio: 32kb/s

* Codec de vídeo: xvid

* Bitrate del vídeo: 1200kb/s

* Tamaño del vídeo: 320×180

* Vídeo generado: salida.mp4

 

Extraer el sonido de un vídeo, y guardarlo como MP3

ffmpeg -i video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 audio.mp3
* Video original: video.avi

* Codec de audio: mp3

* Bitrate del audio: 192kb/s

* Archivo generado: audio.mp3

 

Convertir un wav en MP3

ffmpeg -i audio.wav -ar 44100 audio.mp3
Convertir un avi a mpg

ffmpeg -i entrada.avi salida.mpg
Convertir un mpg a avi

ffmpeg -i entrada.mpg salida.avi
Convertir un avi a gif

ffmpeg -i entrada.avi salida.gif
Añadir el sonido de un archivo de audio a un vídeo

ffmpeg -i audio.wav -i video_entrada.avi video_salida.mpg
Convertir avi a flv

ffmpeg -i entrada.avi -ab 56 -ar 44100 -b 200 -r 15 -s 320×240 -f flv salida.flv
Convertir avi a dv

 

ffmpeg -i entrada.avi -s pal -r pal -aspect 4:3 -ar 48000 -ac 2 salida.dv
o bien

ffmpeg -i entrada.avi -target pal-dv salida.dv
Convertir avi a mpeg para reproductores de dvd

 

ffmpeg -i entrada.avi -target pal-dvd -ps 2000000000 -aspect 16:9 salida.mpeg
* target pal-dvd: Formato de salida

* ps 2000000000: Tamaño máximo del archivo resultante en bits (en el ejemplo, 2Gb)

* aspect 16:9: Panorámico

 

Comprimir avi a divx

 

ffmpeg -i entrada.avi -s 320×240 -vcodec msmpeg4v2 salida.avi
Comprimir Ogg Theora a Mpeg dvd

ffmpeg -i entrada.ogm -s 720×576 -vcodec mpeg2video -acodec mp3 salida.mpg
Comprimir avi a SVCD mpeg2

Para PAL:

ffmpeg -i entrada.avi -target pal-svcd salida.mpg
Para NTSC:

ffmpeg -i entrada.avi -target ntsc-svcd salida.mpg
Comprimir avi a VCD mpeg2

Para PAL:

 

ffmpeg -i entrada.avi -target pal-vcd salida.mpg
Para NTSC:

 

fmpeg -i entrada.avi -target ntsc-vcd salida.mpg
Codificación con varias pasadas

 

ffmpeg -i entrada -pass 2 -passlogfile ffmpeg2pass salida

Para grabar el escritorio con ffmpeg solo basta con ejecutar el siguiente comando:

 

ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq  ~/escritorio.mpg
Donde:

-f x11grab: es la opción de ffmpeg para grabar el escritorio

-r: después de -r se pone el número de tasa de fps que quieren que se grabe.

~/escritorio.mpg: es el archivo de salida, pueden cambiar el formato del archivo modificando la extensión.

Para parar la grabación presionan Ctrl+C o Q en la terminal que lo ejecutaron. Ejecutando ese comando se va a generar un archivo llamado escritorio.mpg en la carpeta que estén situados.

-s: lo que va despues de -s es la resolución de pantalla, wxga es 1366x768. Se puede poner como anchoxalto, por ejemplo 1024x768, 800x600 o sino así:

wsxga: 1600x1024

wuxga: 1920x1200

woxga: 2560x1600

wqsxga: 3200x2048

wquxga: 3840x2400

whsxga: 6400x4096

whuxga: 7680x4800

cga: 320x200

ega: 640x350

hd480: 852x480

hd720: 1280x720

hd1080: 1920x1080

16cif: 1408x1152

qqvga: 160x120

qvga: 320x240

vga: 640x480

svga: 800x600

xga: 1024x768

uxga: 1600x1200

qxga: 2048x1536

sxga: 1280x1024

qsxga: 2560x2048

hsxga: 5120x4096

wvga: 852x480

wxga: 1366x768

sqcif: 128x96

qcif: 176x144

cif: 352x288

4cif: 704x576

También se puede cambiar el codec, bitrate y demás, solo mirar el manual de ffmpeg.

 

Otros ejemplos:

ffmpeg -t 00:00:30 -r 30 -g 300 -s 1024x768 -f x11grab -i :0.0  -vcodec qtrle escritorio-1.mov 
ffmpeg -an -s 1200x900 -r 25 -f x11grab -i :0.0  -s 1200x900 -r 25 -vcodec libxvid  -aspect 1.3333 -sameq video-sinsonido.avi 
ffmpeg -y -t 30 -f x11grab -qscale 2 -r 15 -s 1024x768 -i :0.0  -s 800x600 -vcodec libx264 -vpre hq -crf 22 -threads 0 x11grab.mp4 
ffmpeg -vframes 100 -r 30 -g 300 -s 1024x768 -f x11grab -i :0.0  -vcodec libx264 -vpre hq -crf 22 -threads 0 test.mp4 
ffmpeg -f x11grab -25 -s cif -i :0.0+10,20 out.mpg 

 

Algunos más por Elmohino:

- Codificar a XviD y MP3 en contenedor AVI:

ffmpeg -i [vídeo_a_codificar] -f avi -vcodec libxvid -vtag XVID -b 700k -acodec libmp3lame -ab 128kb [archivo_destino].avi

- Codificar a XviD y AC3 en contenedor AVI:

ffmpeg -i [vídeo_a_codificar] -f avi -vcodec libxvid -vtag XVID -b 700k -acodec ac3 -ab 224kb -ac 6 [archivo_destino].avi 

- Codificar a x264 y AAC en contenedor MP4:

ffmpeg -i [vídeo_a_codificar] -f mp4 -vcodec libx264 -b 500kb -acodec libfaac -ab 128kb [archivo_destino].mp4 

- Codificar a WMV y WMA en contenedor WMV:

ffmpeg -i [vídeo_a_codificar] -b 600kb -vcodec wmv2 -acodec wmav2 -ab 64kb [archivo_destino].wmv 

- Codificar a MP4 y AAC en contenedor MP4 para móviles/celulares modernos:

ffmpeg -i [vídeo_a_codificar] -b 500kb -vcodec mpeg4 -s 352x288 -acodec libfaac -ab 64kb [archivo_destino].mp4 

- Codificar a h263 y AMR-NB en contenedor 3GPP para móviles/celulares antiguos:

ffmpeg -i [vídeo_a_codificar] -s qcif -b 400k -acodec libopencore_amrnb -ar 8000 -ac 1 -ab 12.2k [archivo_destino].3gp 

Por Marisan666:

VC1 a MP4

ffmpeg -i [video_VC-1_a_codificar] -f mp4 -vcodec libx264 -b 12000kb -flags +loop -cmp +chroma -deblockalpha 0 -deblockbeta 0 -refs 1 -bf 3 -coder 1 -me_method umh -me_range 16 -subq 7 -partitions +parti4x4+parti8x8+partp8x8+partb8x8 -g 250 -keyint_min 25 -level 30 -qmin 10 -qmax 51 -qcomp 0.6 -trellis 2 -sc_threshold 40 -i_qfactor 0.71 -acodec libfaac -ab 320kb -ac 6 [archivo_destino].mp4 

Yo añado que la opción -b indica el bitrate de vídeo (cuanto más bitrate más calidad, pero más tamaño del archivo resultante), la opción -ab indica el bitrate de audio y la opción -ac indica el nº de canales de audio que se desean (1=mono, 2=stereo, 6=envolvente).

 

También se puede añadir la opción -s, que indica las dimensiones que se desean dar a la imagen del vídeo resultante. Ej.: -s 1280x720 (para HD). Ej.: -s 1920x1080 (para FullHD). Si no se usa la opción -s, FFMpeg usa las dimensiones originales del vídeo original.

 

Fuentes:

Revista Linux Latino, http://www.tecno-so.com.ar/2010/10/grabar-escritorio-en-linux-con-ffmpeg.html, yo mismo y los autores citados.

Link to comment
Share on other sites

Muchas gracias Khany, gran y útil información, http://gnulinuxvagos.es/public/style_emoticons/default/pirate.gif

 

 

Tengo una dudilla al respecto winff, sería la forma gráfica para ffmpeg? Gracias y un saludo.

Link to comment
Share on other sites

Que le pasó al post? Para mí que a la mañana lo dejé completo...

 

Creo que está arreglado.

 

Un saludo.

 

PD: Granjero, sí, viene siendo la interfaz gráfica, pero creo que está obsoleto y además con muchísimas menos opciones.

PD2: Acabo de mirar y si que sigue con vida: http://winff.org

Link to comment
Share on other sites

Como complemento os diré de algunos programas que no son por terminal y que usan Ffmpeg. DEVEDE lo uso para convertir formatos de video, normamente para pasar DivX a dvd, Avidemux lo uso pasa extraer el audio de los videos para despues pasarlos a mp3.

Link to comment
Share on other sites

  • 2 years later...

Saludos estoy trabajando con ffmpeg y necesito saber o si me podrian ayudar con una guia sobre como usar libfaac, es decir los comandos.

Otra inquietud que tengo cuando realizo la convercion a AAC me devuelve en un contenedor ADTS hay alguna forma de obtener solo el AAC puro sin contenedor?

d antemano agradesco a quien me pueda ayudar

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...