ffmpegHoy en día es fácil acumular muchos videos musicales, audios, videos de Youtube, Vimeo, además de poder volver a escuchar canciones de hace años que no las encontrábamos por ningún lado.

Con Firefox podemos bajar los videos para reproducirlos en nuestra computadora, mediante Download Helper, pero cuando queremos llevarlos en nuestro mp3 o grabarlos en un cd se complica.

Para GNU/Linux existe un programa llamado FFmpeg, con este programa podemos convertir cualquier formato de video a audio, o también convertir cualquier formato de video a otro formato de video.

FFmpeg es una colección de software libre que puede grabar, convertir y hacer streaming de audio y vídeo. Incluye libavcodec, una biblioteca de códecs. FFmpeg está desarrollado en Linux, pero puede ser compilado en la mayoría de los sistemas operativos, incluyendo Windows.

En este caso voy a explicar como convertir flv a mp3 y flv a mpeg , para esto vamos a utilizar la consola.
Por medio de la consola vamos al directorio donde tenemos los archivos y ponemos el siguiente comando:

Para convertir video flash a mp3:
~> ffmpeg -i archivo.flv -vn -ar 44100 -ac 2 -ab 160k -f mp3 archivo.mp3

-ab: es el audio bitrate. Hay que colocar un valor ya que por defecto es 64k, con 160K tendremos una buena calidad de audio (siempre que el original tenga una buena calidad).
ac: es el número de los canales 1 para mono, y 2 para estéreo.

Para convertir video flash a mpeg:
~> ffmpeg -i archivo.flv -b 500k archivo.mpg

Sin embargo con el comando anterior solo modificamos un archivo por vez, para convertir todos los archivos de un directorio debemos utilizar un script, en este caso pego el código de mi script para convertir videos flash a mpeg flv-mpg.sh:

#!/bin/bash

# Colores
Color=”\033[”
Verde=”1;32m”
Amarillo=”1;33m”
CierreColor=”\033[0m”

#Asignar nombre al archivo Log, con fecha y hora.
ArchivoLog=Log$(date +%Y-%m-%d_%k.%M.%S).txt

CantArchivosMin=1
# Calcular la cantidad de archivos flv segun $ ls, para la secuencia posterior.
CantArchivosMax=`ls | grep “flv” -c`

ls | grep “flv” > “${ArchivoLog}”

echo “”
echo -e ” ${Color}${Verde}Flv a Mpg – openSuse Gnu/Linux${CierreColor}”
echo -e ” ${Color}${Verde}———————————${CierreColor}”
echo “”

for indexA in $(seq ${CantArchivosMin} ${CantArchivosMax}); do

#Leer linea por linea del archivo log
LeerLineaA=`head -$indexA “${ArchivoLog}” | tail -1`
#echo “$LeerLineaA”

#Quitar.flv del nombre del archivo
ArchivoSinFLV=`echo ${LeerLineaA} | sed -e ‘s/.flv//’`

echo “”
echo -e “${Color}${Verde}Convirtiendo:${CierreColor} ${Color}${Amarillo}$ArchivoSinFLV.flv${CierreColor}”
echo -e ” Como: ${Color}${Amarillo}$ArchivoSinFLV.mpg${CierreColor}”
echo “”

#Convertir
ffmpeg -i “$ArchivoSinFLV.flv” -b 500k “$ArchivoSinFLV.mpg”

done

 
Si quisieramos convertir flv a mp3, solo debemos cambiar la anteultima linea:
ffmpeg -i “$ArchivoSinFLV.flv” -b 500k “$ArchivoSinFLV.mpg”
Por:
ffmpeg -i “$ArchivoSinFLV.flv” -vn -ar 44100 -ac 2 -ab 160k -f mp3 “$ArchivoSinFLV.mp3″

Para finalizar me queda decir que ffmpeg tiene muchas más posibilidades que estos dos casos prácticos, por ejemplo podemos convertir un directorio de imágenes a video o separar un video en imágenes, video a gif, añadir audio a video, etc.
 

3 Comentarios para “Convertir audio y video con ffmpeg”

  1. Luis Alberto Sanchez Says:

    Hola amigo me podrias explicar como se haria para convertir las imagenes en video, lo que pasa es que soy nuevo en linux, y si me puedes explicar como se haria para que haga un video por cada subcarpeta de un directorio, grcs, saludos

  2. admin Says:

    Hola, disculpa por la demora.
    Con respecto a tu pregunta si lo que querés hacer es un gif animado esto se puede hacer con gimp, en cambio si lo que necesitas es hacer un video a partir de imágenes tenés kino: http://www.kinodv.org/ que se encuentra disponible en los repositorios de todas las distribuciones.

    Te recomiendo hecerte miembro de un foro, uno bastante bueno es:
    http://www.preguntaslinux.org/index.php
    En un foro encontrarás respuestas mucho más rápido que en un blog ya que hay más gente disponible para responder preguntas. Yo modero el subforo suse.

    Saludos!

  3. Luis Says:

    Hola gracias por tu respuesta ya estoy checkando la info, saludos

Deja un comentario

Desarrollado por AnimacionyWeb     Stats