* : Los códecs de compresión y descompresión no tienen por qué ser los mismos.
De hecho, algunos códecs para descomprimir son gratuitos, pero los que comprimen flujos multimedia en dicho formato son de pago.
Ejemplo:
Tabla comparativa de contenedores multimedia
propiedades | avi | mov | mpg | mp4 | ogg | mkv | asf | webm |
---|---|---|---|---|---|---|---|---|
Propietario | Microsoft | Apple | MPEG | MPEG | Xiph.org | CoreCodec | Microsoft | |
Flujos de Vídeo | 1 | + | 1 | + | + | + | + | + VP8 |
Flujos de Audio | + | + | 1 | + | + | + | + | + Vorbis |
Subtítulos | no | si | no | si | si | si | si | no |
Libre | ? (popular) | patentado | patentado | patentado | libre | libre | patentado | libre |
Streaming | no | si | si | si | si | si | si | si |
Más información:
El contenedor mov permite contener distintos tipos de flujos en cantidad variable sin necesidad de que éstos estén intercalados entre sí para que se sincronicen. Esto lo ha hecho especialmente popular como formato de contenedor para la EDICIÓN de vídeo.
* : En la lista se muestran los códecs y alguna información útil como los contenedores de audio más habituales que los emplean.
El bitrate variable permite codificar un audio usando más o menos bits para cada momento en lugar de usar siempre los mismos. Este tipo de codificación permite que usemos más bits cuando necesitemos más calidad y menos cuando no, con lo que se consigue, generalmente, obtener una codificación de más calidad en el mismo o menos espacio de disco.
Tabla comparativa de códecs de audio
propiedades | mp3 | vorbis | ac3 | wma | aac |
---|---|---|---|---|---|
compresión | lossy | lossy | lossy | lossy / lossless | lossy / híbrido |
canales | 1 a 2 | 1 a 16 | 1 a 6 | 1 a 8 | 1 a 28 |
CBR | si | si | si | si | si |
VBR | si | si | si | si | si |
Libre | patentado | libre | patentado | patentado | patentado | Calidad * | aceptable | buena | buena | deficiente | buena |
Más información:
Calidad se refiere a la calidad del sonido percibida por las personas al escuchar el audio. A mismas condiciones de codificación (mismo bitrate, frecuencia, bits, etc.) no se perciben los sonidos igual por el óido humano. Esta valoración está extraída de diversas pruebas documentadas. Obviamente los resultados son subjetivos y difícil de constatar, dado que son los propios usuarios empleados en los estudios los que calificaban la calidad de los sonidos tras escucharlos.
* : En la lista se muestran los códecs y alguna información útil como los contenedores de vídeo más habituales que los emplean.
Tabla comparativa de códecs de vídeo
propiedades | mpeg-1 | mpeg-2 | divx | xvid | theora | vp8 | h264 | x264 |
---|---|---|---|---|---|---|---|---|
Propietario | MPEG | MPEG | DivX Inc. | Xvid.org | Xiph.org | MPEG | Videolan | |
Calidad * | VHS | DVD | DVD | DVD | Bastante alta | Bastante alta | Muy alta | Muy alta |
Tamaño de archivo * | muy grande | muy grande | grande | grande | medio | reducido | reducido | reducido |
Compatibilidad reproductores | muy alta | muy alta | muy alta | muy alta | media | muy reducida | alta | alta |
Libre | patentado | patentado | patentado | libre | libre | libre | patentado | libre |
Más información:
* Calidad en cuanto a la percepción de los usuarios. Tamaño en cuanto a la comparación del resultado de codificar el mismo vídeo con los diferentes códecs.
Convertir todos los archivos .avi de un directorio:
for i in *.avi
do
ffmpeg -i "$i" "$i".flv
done
man ffmpeg
man mencoder
ffmpeg -i "$origen" -ab 56000 -ar 44100 -b 990000 -r 15 -f flv "$vidout".flv
ffmpeg -i "$origen" -b 900000 "$vidout"
mencoder "$origen" -o "$vidout" -ovc xvid -xvidencopts bitrate=3000
-oac mp3lame -lameopts br=96:q=7:aq=9:cbr:mode=1
ffmpeg -i "$origen" sonido.mp3
mencoder -oac copy -ovc copy -idx -o "$vid1" "$vid2" "$vid3"
avimerge -o "$vidout" -i video1.avi video2.avi
mencoder "$origen" -o "$vidout" -ovc xvid -xvidencopts bitrate=1700
-oac mp3lame -lameopts preset=96
-vf scale=640:360,unsharp=l3x3:0.75:c3x3:0.75
ffmpeg -i "$origen" -ab 56000 -ar 44100 -b 700000 -r 15
-f flv -s 640x360 "$vidout"
ffmpeg -i "$origen" -target pal-dv "$vidout"
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd
-vf scale=352:288,harddup -srate 44100 -af lavcresample=44100
-lavcopts vcodec=mpeg1video:keyint=15:vrc_buf_size=327
:vrc_minrate=1152:vbitrate=1152:vrc_maxrate=1152
:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 -o "$vidout".mpg "$origen"
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd
-vf scale=480:576,harddup -srate 44100 -af lavcresample=44100
-lavcopts vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917
:vrc_minrate=600:vbitrate=2500:vrc_maxrate=2500
:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 -o "$vidout".mpg "$origen"
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf
-vf scale=720:576,harddup -srate 48000 -af lavcresample=48000
-lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800
:vbitrate=5000:keyint=15:vstrict=0
:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o "$vidout".mpg "$origen"
ffmpeg -i "$origen"
-vcodec libxvid -b 900000
-acodec libmp3lame "$vidout"
mencoder -of lavf -lavfopts format=mp4
-oac lavc -lavcopts aglobal=1:vglobal=1:acodec=libfaac:abitrate=128
-ovc lavc -lavcopts vcodec=mpeg4 -vf harddup,scale=320:-3
"$origen" -o "$vidout".mp4
ffmpeg2theora -V 800 -v8 -K 250 -A 64 -c 2 -H 44100 --two-pass --optimize
"$origen" -o "$vidout".ogm
tovid + ffmpeg2theora
En la mayoría de los casos un único paso con ffmpeg2theora suele ser suficiente. Pero si encontramos problemas con el audio, podemos hacer una primera conversión usando tovid.
Si el vídeo no es de mucha calidad, bastará con la opción -dvd-vcd. Si no, podemos usar -dvd.
tovid -dvd-vcd -pal -full -in original.avi -out destino
tovid -dvd -pal -full -in original.avi -out destino
Después, se pasa directamente el vídeo resultante destino.mpg a ffmpeg2theora. #$ ffmpeg2theora destino.mpg
ffmpeg -i "$origen" -f webm -vcodec libvpx -b 800k -bt 800k
-acodec libvorbis -ar 44100 -ab 64k -ac 2 -threads 3 "$vidout".webm
0 = 1cpu, 1 = 2cpu's y así sucesivamente.
mencoder -ovc x264 -x264encopts
subq=5:8x8dct:frameref=2:bframes=3:b_pyramid=normal:weight_b
-oac mp3lame -lameopts br=128:q=7:aq=9:cbr:mode=1
"$origen" -o "$vidout".avi
ffmpeg -i "$origen" -an -pass 1
-vcodec libx264
-b 900k -bt 900k -threads 0 "$vidout".mp4
ffmpeg -i "$origen" -acodec libmp3lame -ar 44100 -ab 128k -ac 2 -pass 2
-vcodec libx264 -b 900k -bt 900k -threads 0 -y "$vidout".mp4
En las versiones antiguas de ffmpeg, se podía usar el parámetro -vpre para usar "presets" específicos en cada pasada:
ffmpeg -i "$origen" -an -pass 1
-vcodec libx264 -vpre slow_firstpass
-b 900k -bt 900k -threads 0 "$vidout".mp4
ffmpeg -i "$origen" -acodec libmp3lame -ar 44100 -ab 128k -ac 2 -pass 2
-vcodec libx264 -vpre slow -b 900k -bt 900k -threads 0 -y "$vidout".mp4
mencoder "$origen" -o "$vidout" -ovc xvid -xvidencopts bitrate=1700
-oac mp3lame -lameopts br=96:q=7:aq=9:cbr:mode=1
-vf scale=640:360,unsharp=l3x3:0.75:c3x3:0.75
mkvextract tracks "$origen" 3:"$vidout".srt
ffmpeg -i "$origen" -y -f image2 -ss 8 -sameq -t 0.001
-s 320*240 "$vidout".jpg
ffmpeg -i "$origen" -f image2 -vcodec mjpeg imagenes%d.jpg
ffmpeg -i "$origen" -s 200x200 -r 30 -pix_fmt rgb24 imagen.gif
sox -t alsa "hw:0,0" -t ogg -A -2 -c1 audio.ogg rate 44100
gain +16 dither -s > /dev/null &
soxpid=`ps -A | grep sox | awk '{print $1}'`
ffmpeg -f x11grab -r 25 -s 1024x768 -r 25 -i :0.0 -sameq video.avi
mencoder video.avi -ovc copy -oac mp3lame -audiofile audio.ogg -o "$vidoutput"
rm audio.ogg video.avi
kill $soxpid 2> /dev/null
ffmpeg -f x11grab -r 25 -s 1400x1050 -r 25 -i :0.0+1280,0 -sameq video.avi
¡¡¡Las CPU's van a echar Chispas!!!
Licenciado bajo Creative Commons
Reconocimiento - No Comercial - Compartir igual
Puedes:
¡Muchas gracias!