domingo, 1 de julio de 2012

Convertir rm a mp3 en Gnu/linux

Esta tarde necesitaba cambiarle el formato a unos archivos de audio que estaban en ese raro e incomodo formato Real Audio (.rm o .ram). Hasta donde sé, porque no me metí mucho en el tema, existen herramientas libres o conversores de audio con interfaz gráfica que hacen esa tarea, si no me equivoco Handbrake es una de las mejores opciones, pero no lo tenía instalado y tampoco quería instalar nada solo para usarlo una vez, así que me puse a jugar con unos comandos y resultó este script:

#!/bin/sh
#
# rm a mp3

for i in *.rm; do
 if [ -e "$i" ]; then
   file=`basename "$i" .rm`
   mplayer "$i" -ao pcm:file="$file.wav"
 fi
done

for i in *.wav; do
 if [ -e "$i" ]; then
   file=`basename "$i" .wav`
   lame -h -b 128 "$i" "$file.mp3"
 fi
done

rm *.wav
#rm *.rm


Como se ve, debemos tener instalados lame y mplayer, herramientas esenciales en nuestros sistemas, por lo que es muy probable que esten instalados, si no, cada uno sabrá como instalarlo en su distro. Para los Slacker que hicieron una instalación por defecto ya deberían tenerlo.

El script, convierte los rm a wav mediante mplayer y luego los pasa de wav a mp3 con lame, borrando los wav y/o rm (descomentando la última línea).

Para ejecutar el script, lo copian en un archivo de texto con el editor que prefieran y con el nombre que quieran, acá le puse rm2mp3. Ponen el script en el directorio donde estan los archivos de audio a convertir y en una terminal le dan permisos y lo corren:


$ chmod +x rm2mp3

$ sh rm2mp3

Y ya tendrían los archivos en mp3.