# CD-Ripper

Ein CD-Ripper (manchmal auch als Audiograbber bezeichnet) ist eine Software, die mittels eines CD-ROM-Laufwerks Audiodaten (meist Musik) von Audio-CDs liest („rippt“) und als Audiodatei speichert. Der Vorgang wird auch als Digital Audio Extraction (DAE) bezeichnet.
Viele CD-Ripper bieten die Möglichkeit, Metadaten über die zu extrahierende Audio-CD aus dem Internet abzurufen und diese (bei Wahl eines geeigneten Dateiformats) abzuspeichern. So kann man Musikbibliotheken auf dem Computer anlegen.

## Etymologie

Der Eintrag für rip im Jargon File, ein populäres Kompendium der Hacker-Ausdrucksweise, gibt als Ursprung des Terms den Amiga-Slang an, wo er das Auffinden und Isolieren von Medien-Inhalten (Grafiken und Sounds) aus Programmen bezeichnet.

## Geschichte

Einer der ersten CD-Ripper aus den frühen 1990ern (noch unter MS-DOS) war Digital Audio Copy (DAC) von Christoph Schmelnik. Unter Unix wurde 1993 das Software-Projekt CDDA2Wav gestartet, welches auch den Ursprung der aktuellen cdparanoia bildet.

## Formate

Das Audiomaterial auf einer Audio-CD (CDDA) liegt als ein Strom von nicht redundanzreduzierten puls-code-modulierten Audiodaten vor. Daher ist beim Rippen ein natürliches Dateiformat eines, das einen ebensolchen Strom speichert, wie z. B. RIFF WAVE („.wav“). Zur Verwendung mit gängigen Abspielprogrammen und aus Gründen der Speicherplatzersparnis kann das Format geändert werden. Dazu kann entweder ein verlustbehafteter Codec wie MP3 oder Vorbis oder ein verlustfreier Codec wie FLAC verwendet werden. Falls ein Containerformat gewählt wird, das Metadaten unterstützt (z. B. MP3, Matroska oder Ogg), können weitere (Meta)-Informationen über die Audio-CD (Titel, Interpret etc.) oder den DAE-Prozess (Auslesedatum, Software etc.) abgelegt werden.

## Technik

Die Audiodaten werden nicht über die analogen oder gegebenenfalls digitalen Audio-Anschlüsse des Laufwerks ausgegeben, sondern über die Hostschnittstelle (meist Serial ATA, ATA/ATAPI oder SCSI) übermittelt.
Kennzeichnend ist, dass
* der Host die Daten direkt von der CD liest, ohne dass diese in die analoge Domäne überführt wurden, wie dies beim Anschluss des Laufwerks über die Soundkarte und deren Benutzung der Fall wäre;
* die Übertragung normalerweise um ein Mehrfaches schneller erfolgt als das komplette Abspielen der CD;
* dem Laufwerk bzw. der Software, da keine Echtzeitanforderung besteht, prinzipiell mehr Möglichkeiten zum Verfahren beim Auftreten von Lesefehlern zur Verfügung stehen.
Traditionellerweise wurde die digitale Extraktion von Audiodaten von Laufwerksseite eher stiefmütterlich behandelt, so dass insbesondere bei älteren Laufwerken die Fehlerkorrektur hierbei schlechter als bei der Wiedergabe der CD ist. Die Signalverarbeitung im Laufwerk erfolgt dabei meist über andere Schaltungsteile als bei der Wiedergabe der CD. Häufig werden Lesefehler nicht an den Host gemeldet. Aufgrund der Tatsache, dass ein Datenblock mit Audiomaterial mit weniger Metadaten ausgestattet ist als ein Block mit CD-ROM-Daten, ist die Adressierbarkeit der Blöcke vielfach eingeschränkt – meist tritt ein von der Laufwerksfirmware abhängiger (bei vereinzelten Modellen auch zufälliger) Versatz auf, wobei die tatsächliche von der vom Laufwerk angegebenen Leseposition um einige Samples abweicht.
Moderne Laufwerke haben vielfach eine sehr gute Fehlerkorrektur. Wegen der gegenüber CD-ROM-Daten geringeren Redundanz des Audiomaterials bei der Kodierung auf der CD ist bei praktisch allen Laufwerken – gegenüber der Geschwindigkeit bei Daten-CDs – die maximale Lesegeschwindigkeit bei der DAE eingeschränkt.
Zum Erkennen von Lesefehlern können entweder (sofern vom Laufwerk unterstützt) die Fehlersignale der Fehlerkorrektur (C1- und C2-Fehler) im Laufwerk ausgewertet werden oder das Material mehrmals gelesen und die Ergebnisse verglichen werden, was als die sicherste Methode gilt. (Bei Lesefehlern wird von zufälligen Ergebnissen an den Fehlerstellen ausgegangen.) Dadurch können Lesefehler weitgehend sicher erkannt werden, sofern nicht ein Lesepuffer des Laufwerkes im Spiel ist, da sonst nur zweimal das Ergebnis nur eines wirklichen Auslesevorganges aus dem Puffer ausgegeben wird, das sich selbst natürlich identisch ist und so ein Erkennen von fehlerhaften Stellen auf diesem Wege unmöglich wird. Daher muss für das Erreichen zuverlässiger Ergebnisse ein eventueller Lesepuffer zuverlässig umgangen werden. Weiterhin können Lesefehler durch das Vergleichen der Ausleseergebnisse mit anderen Nutzern erkannt werden, was der Dienst AccurateRip mittels einer Datenbank von Prüfsummen verwirklicht, die von Nutzern beigetragen werden.

### DAE-Laufwerkseigenschaften

Die letztendlich erreichbare Qualität ist – neben dem Zustand des Mediums, also der CD – durch die Eigenschaften des spezifischen optischen Laufwerks definiert.
Eigenschaften, die für DAE hilfreich sind, sind ein geringer Versatz, kein Jitter, ein deaktivierbares Caching und die Fähigkeit, den Fehlerzustand (C1 und C2) korrekt an die DAE-Software zurückzumelden. Es existieren Datenbanken über die Eigenschaften spezifischer Laufwerke. Die DAE-Software EAC bietet die Möglichkeit, die Laufwerkseigenschaften automatisch mit einer Test-CD zu bestimmen.
Die Unterstützung verschiedener CD-Rippersoftware für hilfreiche und störende Laufwerkseigenschaften ist sehr unterschiedlich und sollte berücksichtigt werden; z. B. war EAC eine der ersten DAE-Programme, die C2-Fehler-Informationen überhaupt ausgewertet haben.

## Software

Viele gängige Betriebssysteme bieten vorinstallierte CD-Ripper. Auch viele Audioplayer können CDs rippen.
Zu den verbreiteten CD-Rippern gehören:
| BSD und Linux | Mac OS | Windows |
| Asunder Sound Juicer Grip Rubyripper K3b cdparanoia cdda2wav fre:ac | cdda2wav iTunes fre:ac | Audiograbber cdda2wav CDex dBpoweramp Exact Audio Copy foobar2000 iTunes MediaMonkey MusicMatch Jukebox No23 Recorder RealPlayer Spider Player Winamp Windows Media Player fre:ac |