Convirtiendo archivos AMR a MP3

Le ha pasado que sus usuarios reciben un archivo atachado en un e-mail que resulta haber sido enviado desde un Blackberry, iPhone o Andorid, que contiene un "importante" mensaje pero que según sus usuarios está corrupto porque no pueden abrirlo y culpan a tu servidor de correo, o le pides a alguien que te envié en nuevo mensaje de bienvenida para el PBX que sólo acepta WAV o MP3 como formato y reciber un archivo con extensión AMR. Pues a mi me ha estado pasando muy a menudo, así que he decidio escribir un mini-howto de como personalizar una versión de FFmpeg para soportar la conversión de AMR to MP3.

Por defecto FFmpeg no soporta ni AMR, ni MP3 en la mayoría de distros (en realidad las principales) por la sencilla razón de que ambos son formatos propietarios e incluirlos por defecto, más alla del hecho de que va contra el espiritu del Open Source, sería una violación de patentes y términos de licencia, que las comunidades que soportan dichas distribuciones no pueden hacer ya que se verían expuestas a demandas legales. Eso no quiere decir que para tu uso particular no puedas compilar desde las fuentes para obtener una versión de FFmpeg que tengas los codecs de ambos formatos.

Pues bien comencemos con el mini-Howto.

Primero, debemos descargar e instalar la librería x264 (Aquí sólo mostramos los comandos que debe tipear):

# cd /usr/src
# git clone git://git.videolan.org/x264.git
# cd x264
# ./configure
# make   
#make install
#ldconfig

Ahora, debemos descargar e instalar la librería que dará soporte al formato arm llamada opencore-amr:

# cd /usr/src
# wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/0.1.2/opencore-amr-0.1.2.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopencore-amr%2Ffiles%2F&ts=1285678081&use_mirror=surfnet
# tar -zxvf opencore-amr-0.1.2.tar.gz
# cd opencore-amr-0.1.2
# ./configure
# make all
# make install

Seguimos con los requerimientos, ahora a descargar e instalar la librería que da soporte al mp3 que se llama LAME:

 # cd /usr/src
# wget http://downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flame%2Ffiles%2Flame%2F&ts=1285677746&use_mirror=softlayer
# tar -zxvf lame-3.98.4.tar.gz
# cd lame-3.98.4
# ./configure
# make all
# make install

 Ya tenemos todas las dependencias ahora a instalar FFmpeg desde las fuentes y activando el soporte para AMR y MP3:

# cd /usr/src
# svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg-svn
# cd ffmpeg-svn
# ./configure –enable-gpl –enable-pthreads –enable-libx264 –enable-libmp3lame –enable-version3 –enable-libopencore-amrnb –enable-libopencore-amrwb
# make all

Listo ya tenemos el binario que necesitamos, pero para evitar problemas y que esté en conflicto con otras versiones de ffmpeg que puedan estar instaladas le vamos a cambiar el nombre y luego moverlo manualmente a "/bin"

# mv ffmpeg ffmpeg+amr+mp3
# cp ./ffmpeg+amr+mp3 /bin

Listo ahora ya podemos convertir el formato de los archivoc de AMR a MP3 de la siguiente manera:

$ ffmpeg+amr+mp3 -i file_name.amr file_name.mp3

Espero les sea de utilidad este información.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.