Convertir formatos de audio MP3/OGG

Se convierten primero en .wav o .au, hay varias formas

     xmms  (con el plugin Disk Writer activado)
     mp3blaster
     mpg123 -v -s fich.mp3 | sox -t ul - fich.au
     mpg123 -waw archivo.wav archivo.mp3
     mpg123 -s archivo.mp3 | sox -t wav -c 2 -r44100 -w -s - archivo.wav
     mpg321 --w archivo.wav archivo.mp3
     ogg123 -d wav -f archivo.wav archivo.ogg
     lame -h --decode archivo.mp3

Por ejemplo, estos comandos descomprimen un mp3, lo manipulan y lo vuelve a guardar como wav:

     mpg123 --wav xxxx.wav viejo.mp3
     sox xxxx.wav -r 44100 nuevo.wav
    lame -b 190 -h -m j nuevo.wav nuevo.mp3

Grabar MP3 como audio CD

Este script en perl hace el trabajo de comvertir mp3 --> wav y grabar con cdrecord:

#!/usr/bin/perl
#mp3burn
# Tomado de Ryan Richter con licencia GPL

 #Cambiar siguientes opciones para que funcione en tu equipo:

$cdrecord_opts = "dev=0,1,0 speed=10 fs=8m defpregap=0 -v -nopreemp - -swab -audio";


if ($#ARGV < 0) {                  #Si no se usan argumentos
        die "Uso:  mp3burn [arhivos mp3]\n";
}

for($i = 0; $i <= $#ARGV; $i++) {
        $fifo[$i] = "$i.cdr";
        print "$fifo[$i]\n";       #Nombres de los fifos
        system "mkfifo", $fifo[$i];
        if (fork() == 0){          #Comienza la decodificación
                exec "mpg123 -s \"$ARGV[$i]\" > \"$fifo[$i]\"";
        }
}

#Comienza la grabación ....
system "cdrecord", split(/\s+/, $cdrecord_opts), @fifo;

#Limpiando ....
unlink @fifo;

Este otro sirve para lo mismo, pero usa cdrdao.

 #!/bin/sh
 TMPDIR=$HOME/tmp/wav
 if [ "_$1_" != "_-nowav_" ]
 then
 mkdir $TMPDIR
 (cd $TMPDIR; rm *.wav cd.toc)
 for file in *.mp3
 do
        WAV="`basename \"$file\" .mp3`".wav
        mpg123 -q -v -w "$TMPDIR/$WAV" "$file" 2>&1 |\
        tee /dev/tty |\
        egrep ' rate: 44100,' || (
                echo "Muestreo no es de 44100 Mhze  \"$file\""
                sox "$TMPDIR/$WAV" -r 44100 "$TMPDIR"/tmp.wav &&\
                mv "$TMPDIR"/tmp.wav "$TMPDIR/$WAV"
        )
 done
 fi

 cd $TMPDIR
 (
 echo CD_DA
 for file in *.wav
 do
        echo TRACK AUDIO
        echo AUDIOFILE \"$file\" 0
 done
 ) > cd.toc

 $SU cdrdao write --device 0,3,0 cd.toc

 echo rm *.wav cd.toc

Grabar pistas

Primero pasamos las pistas (cdda) a wav, y se graban después:

     cdda2wav -D0,0,0 -x -t3
     cdda2wav -D 0,0,0  -s -x -t 2 song -B

CDDA a MP3 directamente

 cdparanoia (opciones) | gogo (opciones)
 abcde && halt

En el segundo ejemplo, tras ejecutar abcde se para el sistema. Es un script que llama a cdparanoia o cdrecord y a gogo, lame, bladeenc... y usa cddb, de modo que pone las pistas del cd en mp3 con su título correcto.

 grip (modo gráfico, front-end de CDParanoia o Cdda2Wav y LAME para comprimir los wav.

Otro modo

 bladeenc  -del song02.wav song02.mp3 (de wav a mp3, borrando el original) http://bladeenc.mp3.no