CDs rippen in Ubuntu

Ich habe neulich versucht, ein Programm zu finden, mit dem ich in Ubuntu* bequem CDs ins AAC/M4A Format rippen kann. Das hat sich als problematischer herausgestellt, als man zunächst vermuten könnte.

Während es relativ einfach ist, MP3s oder OGGs zu erstellen, bieten viele Programme erst gar keinen AAC Support.

Mit Grip hat das immer prima geklappt, aber das wird seit Jahren nicht mehr weiterentwickelt und ist auch nicht mehr in den offiziellen Paketquellen zu finden.

Hier mal ein kleiner Überblick über einige der Programme, die ich ausprobiert habe und was sie falsch machen:

  • abcde: Keine GUI.
  • asunder: Benötigt das propietäre neroAAC und schreibt keine Tags.
  • goobox: Kein AAC.
  • Sound Juicer: Wie alle Gstreamer-Ripper: kein Artist-Tag.
  • Rhythmbox: s. Sound Juicer.
  • xcfa: Leerzeichen werden in Dateinamen durch Unterstriche ersetzt. Kann man nicht abschalten.
  • ripperX: Kein AAC.
  • Audex: Versucht faac scheinbar mit falschem Parameter zu benutzen. Bricht mit nichtssagender Fehlermeldung ab.
  • K3b: Kein AAC.
  • Soundkonverter: Keine Tags.
  • audiocd:// in KDE: Kein AAC.

(Näheres zu den Programmen gibt es im Ubuntuusers Wiki.)

Ich habe mich schließlich für das in meinen Augen kleinste Übel entschieden und benutze jetzt abcde in der Kommandozeile. Und ich muss sagen, er ist wirklich was er verspricht: A Better CD Encoder. Wenn man die Config erstmal hat, klappt alles wie am Schnürchen. Eigentlich ist er sehr ähnlich zu Grip. Nur halt ohne GUI.

Meine ~/.abcde.conf ist:

OUTPUTTYPE="m4a"
OUTPUTDIR="$HOME/Musik/neu/"
OUTPUTFORMAT='${ARTISTFILE}/${ALBUMFILE}/${TRACKNUM} ${TRACKFILE}'
VAOUTPUTFORMAT='${ALBUMFILE}/${TRACKNUM} ${ARTISTFILE} ${TRACKFILE}'
ATOMICPARSLEY=AtomicParsley
# The default actions that abcde will take.
ACTIONS=cddb,read,encode,move,clean
# Track padding: force abcde to pad tracks using 0, so every song uses a two
# digit entry. If set to "y", even a single song encoding outputs a file like
# 01.my_song.ext
PADTRACKS=y
XPROCS=4 # Run a few encoders simultaneously
EXTRAVERBOSE=y   # Useful for debugging
# Custom filename munging:
# By default, abcde will do the following to CDDB data to get a useful
# filename:
# * Translate colons to a space and a dash for Windows compatibility
# * Eat control characters, single quotes, and question marks
# * Translate spaces and forward slashes to underscores
# To change that, redefine the mungefilename function.
# mungefilename recieves the CDDB data (artist, track, title, whatever)
# as $1 and outputs it on stdout.
mungefilename ()
{
echo "$@" | sed s,:,-,g | tr / _ | tr -d \'\"\?\[:cntrl:\]
}

Jetzt muss ich nur noch die CD ins Laufwerk legen und abcde eingeben und kurze Zeit später habe ich richtig benannte und getagte .m4a Dateien.

Ich hoffe, ich erspare mit diesem Artikel jemandem die selbe Suche.

*Wenn ich Ubuntu schreibe meine ich auch Kubuntu und Xubuntu… halt alle Distributionen, die die selben Paketquellen verwenden.