Convertir audio en GNU/Linux

En este post les propongo una manera muy geek de convertir de un formato de audio a otro. Lo publiqué en mi blog y me pareció buena idea compartirlo con la comunidad debianera de Argentina.

Si bien existen programas gtk que realizan la misma acción, todos esos son GUI’s de programas que se ejecutan en una terminal (ffmpeg, timidity, lame), por eso, como el teclado no muerde, les presento la forma de convertir formatos de audio mediante consola.

Antes de continuar deberíamos instalar los siguientes programas:
# aptitude install ffmpeg timidity lame

Antes de comenzar a realizar las conversiones voy a hacer algúnas aclaraciones “técnicas” con los parámetros de ffmpeg, lame y timidity. Si bien no son necesarios, ya que si no se aplican el archivo de salida va atener los mismos atributos que el de entrada, son útiles para enriquecer/empobrecer la calidad de la pista de audio, como así también para cambiar de mono a estereo o vicebersa.

El parámetro -ar (en ffmpeg) y -s (en timidity) corresponde a la frecuencia de muestreo y el valor mínimo es de 8000 hz, una calidad algo baja para archivos de audio.A continuación expreso algúnos valores (obtenidos de la WIkipedia) para que se guíen:

8000 hz: adecuado para la voz humana pero no para la reproducción musical.

22050 hz: adecuado para cd, vcd, svcd y archivos de audio.

48000 hz: adecuado para audio profesional (DVD y televisión digital).

96000 ó 192400 hz: adecuado para DVD y Blue-Ray.

El parámetro -ab (en ffmpeg) y -b (en lame) corresponde a la tasa de bits (bitrate) y los valores adeccuados para audio son los siguientes:

128 kbit/s: calidad satisfactoria para audio.

192 kbit/s: calidad buena para audio, muy utilizado en cd.

320 kbit/s: calidad máxima para audio.

El parámetro -ac (en ffmpeg) corresponde a la cantidad de canales de la pista de audio. Para mono el valor es 1, para estereo 2.

Con esto aclarado podemos comenzar a especificar como convertir formatos.

MP3 a MP3

Esto sirve para bajar la calidad a la pista de audio.
$ lame -b 64 archivo_origen.mp3 archivo_modificado.mp3

MP3 a AMR

Instala lo siguiente para poder llevar a cabo la conversión:
# aptitude install amr amr_wb

Ahora si, para convertir:
$ ffmpeg -i archivo.mp3 -acodec libamr_wb -ar 8000 -ac 1 -ab 12.2k archivo.amr

MP3 a OGG
$ ffmpeg -i archivo.mp3 archivo.ogg

MP3 a WAV
$ ffmpeg -i archivo.mp3 archivo.wav

MP3 a WMA
$ ffmpeg -i archivo.mp3 archivo.wma

WMA a MP3
$ ffmpeg -i archivo.wma archivo.mp3

WAV a MP3
$ ffmpeg -i archivo.wav archivo.mp3

AMR a MP3
$ ffmpeg -i archivo.amr -acodec libamr_wb -ar 8000 -ac 1 -ab 12.2k archivo.mp3

MIDI a WAV
$ timidity -Ow -s 44100 -o archivo.wav archivo.mid

MIDI a OGG
$ timidity -Ow -s 44100 -o archivo.ogg archivo.mid


6 Comentarios a “Convertir audio en GNU/Linux”

  1. Samuel dice:
    Mozilla Firefox 3.0.11 Ubuntu Linux

    Muy buen post bastante bien explicado ahora a poner en práctica lo aqui recomendado..


    Mozilla Firefox 3.0.11 Ubuntu Linux

  2. Xevi Noè dice:
    Debian IceWeasel 3.0.6 Debian GNU/Linux

    Genial!

    He tenido que convertir un archivo de Midi a MP3, y he encontrado tu página. Ha funcionado a la primera. Gracias!


    Debian IceWeasel 3.0.6 Debian GNU/Linux

  3. Axel dice:
    Mozilla Firefox 3.0.13 Ubuntu Linux

    Fantastico y sencillito, gracias por el aporte. Mas de esto y sigo convenciendo mas al mundo de linux.


    Mozilla Firefox 3.0.13 Ubuntu Linux

  4. cristian dice:
    Mozilla Firefox 3.5.5 Fedora Linux

    y de MP3 a MIDI se puede?? o no??…..

    …saludos


    Mozilla Firefox 3.5.5 Fedora Linux

  5. jorge dice:
    Google Chrome 4.0.249.43 Linux

    cordial saludo
    me aparece esto para pasar de amr a mp3
    ayuda por favor…
    gracias de antemano

    FFmpeg version SVN-r19352-4:0.5+svn20090706-2ubuntu2, Copyright (c) 2000-2009 Fabrice Bellard, et al.
    configuration: –extra-version=4:0.5+svn20090706-2ubuntu2 –prefix=/usr –enable-avfilter –enable-avfilter-lavf –enable-vdpau –enable-bzlib –enable-libgsm –enable-libschroedinger –enable-libspeex –enable-libtheora –enable-libvorbis –enable-pthreads –enable-zlib –disable-stripping –disable-vhook –enable-gpl –enable-postproc –enable-swscale –enable-x11grab –enable-libdc1394 –extra-cflags=-I/build/buildd/ffmpeg-0.5+svn20090706/debian/include –enable-shared –disable-static
    libavutil 49.15. 0 / 49.15. 0
    libavcodec 52.20. 0 / 52.20. 0
    libavformat 52.31. 0 / 52.31. 0
    libavdevice 52. 1. 0 / 52. 1. 0
    libavfilter 0. 4. 0 / 0. 4. 0
    libswscale 0. 7. 1 / 0. 7. 1
    libpostproc 51. 2. 0 / 51. 2. 0
    built on Oct 13 2009 22:15:16, gcc: 4.4.1
    Input #0, amr, from ‘Redes.amr’:
    Duration: N/A, bitrate: N/A
    Stream #0.0: Audio: samr / 0x726D6173, 8000 Hz, mono, s16
    Unknown encoder ‘libamr_wb’


    Google Chrome 4.0.249.43 Linux

  6. ramiro_md dice:
    Opera 9.80 Linux

    Jorge disculpa la demora jaja, los tutoriales se postean en está parte del sitio es verdad, pero la parte referida a la resolución de problemas no es está. Logueate en el foro, y explica tu problema haciendo mención a este tuto.
    Un saludo!


    Opera 9.80 Linux

Dejar un comentario

Codigo emoticones:
:alien: :angel: :@ ;) :$ :cheerful: :cool: :cry: :devil: :dizzy: :ermm: :face: :getlost: :biggrin: :happy: :heart: :kissing: :lol: :D :ninja: :pinch: :pouty: :sad: :shocked: :sick: :sideways: :silly: :sleeping: :) :P :unsure: :w00t: :S :whistle: :wink: :wub: