Rubyripper

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Pakete aus dem Quellcode erstellen

  2. Archive entpacken

  3. Ein Terminal öffnen

Inhaltsverzeichnis
  1. Hintergrund
  2. Installation
  3. Verwendung
  4. Einstellungen
  5. Tipps
  6. Problembehebung
  7. Links

logo.png Rupyripper 🇬🇧 ist eines von vielen Programmen, mit dem sich Audio-CDs auslesen und auf die Festplatte kopieren lassen. Im Gegensatz zu seinen "Artgenossen" setzt Rubyripper jedoch konsequent auf ein möglichst akkurates Kopieren. Hierbei greifen aufwändige Maßnahmen zur Fehlererkennung und -korrektur. Der Entwickler orientierte sich an Exact Audio Copy (EAC), welches in der Windowswelt als Nonplusultra unter den CD-Rippern gilt. Wie bei ziemlich allen CD-Rippern unter Linux dient auch bei Rubyripper cdparanoia 🇬🇧 als Grundlage.

Die Entwicklung des Originalproramms 🇬🇧 wurde vom Entwickler zum 10.03.2014 eingestellt, die hier genutzte Weiterführung auf github ist voll funktionsfähig und wird aktuell gepflegt. Alternative Programme sind im Artikel CDs rippen (Abschnitt „Exaktes-CD-Abbild-rippen“) zu finden.

Hintergrund

Generelles

Das Lesen von optischen Medien (wie eben Audio-CDs) ist ein äußerst störanfälliger Vorgang. Der Laser wird nicht nur von offensichtlichen Dingen wie Kratzern oder Verschmutzungen auf der Oberfläche der Discs abgelenkt, sondern selbst von kleinsten Staubpartikeln in der Luft. Lesefehler treten also sowieso auf, die Frage ist nur, wie schwerwiegend diese sind. Verschlimmert wird die Situation zusätzlich durch die Tatsache, dass der Audio-CD-Standard nur rudimentäre Möglichkeiten zur Fehlererkennung bietet.

Maßnahmen

Das Vorgehen von Rubyripper gliedert sich in zwei Schritte: Der erste Schritt dient der Fehlererkennung. Hierbei wird mindestens zweimal ein Abbild der gesamten Disc bzw. der gewählten Spuren erstellt. Anschließend werden die Abbilder miteinander verglichen. Gibt es Stellen, an denen sie sich unterscheiden, traten genau dort Lesefehler auf. Im zweiten Schritt wird versucht, die aufgetretenen Fehler zu korrigieren. Dabei werden weitere Kopien erstellt, in der Hoffnung, dass der Laser diesmal nicht oder zumindest weniger stark gebrochen wird. Anschließend werden die problematischen Stellen in allen Abbildern nochmals verglichen. Wurde die vorausgesetzte Anzahl an identischen Kopien erreicht, gilt der Fehler als korrigiert. Gelang dies nicht, wird jenes Abbild behalten, das die wenigsten Abweichungen zu den anderen aufwies.

Ärgerlicherweise ist es nicht möglich, einfach nur die problematischen Stellen erneut zu kopieren, da bei kleinen Datenmengen die Gefahr besteht, dass das Laufwerk stillschweigend auf seinen Zwischenspeicher zugreift, statt die Disc noch einmal zu lesen.

Installation

Rubyripper befindet sich nicht in den offiziellen Paketquellen. Daher muss das Programm selbst aus dem Quelltext übersetzt werden.

Um die aktuellste Version manuell zu kompilieren [1] und anschließend mit vollem Funktionsumfang nutzen zu können, werden folgende Pakete benötigt:

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install cd-discid cdparanoia cdrdao flac lame normalize-audio ruby-gnome2 ruby sox vorbisgain 

sudo aptitude install cd-discid cdparanoia cdrdao flac lame normalize-audio ruby-gnome2 ruby sox vorbisgain 

Das ebenfalls angegebene Paket mp3gain ist nicht mehr in den Quellen verfügbar, kann aber über ein PPA bezogen werden.

Adresszeile zum Hinzufügen des PPAs:

Hinweis!

Zusätzliche Fremdquellen können das System gefährden.


Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der Wiki/Vorlagen/PPA/ppa.png PPA-Beschreibung des Eigentümers/Teams flexiondotorg zu entnehmen.

Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install mp3gain 

sudo aptitude install mp3gain 

Der Quelltext findet sich auf der Projektseite 🇬🇧. Nachdem dieser entpackt [2] wurde und man in dessen Verzeichnis gewechselt hat, sollte das configure-Skript mit folgenden Optionen ausgeführt werden [3]:

./configure --enable-lang-all --enable-gtk2 --enable-cli 

Hierbei werden sowohl der GTK- als auch der Shell-Client kompiliert. Ersteres sollte in aktueller Version immer aktiviert werden, da einige Optionen ggf. noch nicht über den Shell-Client konfiguriert werden können. Abschließend kompilieren und installieren.

Hinweis!

Fremdsoftware kann das System gefährden.

Verwendung

Mit grafischer Oberfläche

Hinweis:

Die nachfolgende Beschreibung der Optionen bezieht sich sowohl auf die deutsche als auch die englische Fassung.

Nach erfolgreicher Installation findet man das Programm bei Ubuntu-Varianten mit einem Anwendungsmenü unter "Multimedia -> Rubyripper" oder "Unterhaltungsmedien -> Rubyripper". Ansonsten gibt man den Programmnamen in der Dash ein.

Der Programmstart erfolgt mit einer kleinen Verzögerung, da Rubyripper das Laufwerk auf eine vorhandene Audio-CD testet. Befindet sich bereits eine Audio-CD im (richtigen) Laufwerk, öffnet Rubyripper direkt das entsprechende Menü. Ist die automatische freedb-Abfrage aktiviert, werden die Informationen zur CD von dort geladen. Des Weiteren finden sich zwei Optionen in diesem Menü:

rubyr_main.png

Auf der linken Seite befinden sich die wichtigsten Funktionen:

Einstellungen

Sicheres Auslesen (Secure Ripping)

Achtung!

Kopiert man häufig Audio-CDs, sollte bei den folgenden Einstellungen bezüglich der Anzahl an Kopiervorgängen bedacht werden, dass optische Laufwerke (CD-/DVD-/BluRay-ROMs) zumeist sehr schnell verschleißen. Nicht umsonst legt Rubyripper automatisch eine Zwangspause ein, wenn das Kopieren länger als 30 Minuten dauert.

Obendrein kann bei zu vielen Kopiervorgängen der selbe Fehler mehrfach auftreten, so dass Rubyripper beim Vergleichen dann fälschlich von einer erfolgreichen Korrektur ausgeht.

rubyr_opt1.png

TOC Analyse (TOC analysis)

rubyr_opt2.png

Formate (Codecs)

Hier wird festgelegt, mit welchem Audio-Codec das kopierte Material komprimiert werden soll. Die gewünschten Parameter werden an den jeweiligen Enkoder weitergereicht.

rubyr_opt3.png

Weitere Optionen:

rubyr_opt4.png

Freedb

Andere (Other)

Hier wird festgelegt, wie die Dateien benannt werden sollen. Dazu benutzt man Variablen, die mit einem Klick auf das Pluszeichen bei "Optionen für "Dateinamen-Schema" anzeigen" ("Show options for file naming sheme") erläutert werden.

rubyr_opt5.png

Tipps

Kommandozeile

Die Kommandozeilenversion enthält einen speziellen Anfänger-Modus, bei dem der Benutzer mit Fragen und Hinweisen durch den Prozess geführt wird. Der Befehl dazu lautet:

rrip_cli -v 

Problembehebung

Probleme mit der GTK-Oberfläche

Wenn es zu Fehlern bei der Verwendung der grafischen Oberfläche kommen sollte, kann man diese zum Konfigurieren benutzen und zum Rippen auf die Kommandozeile ausweichen. Falls keine Metadaten eingetragen werden sollten, können die Dateien auch im Nachhinein getaggt werden, z.B. mit Programmen wie Easytag.

Rubyripper arbeitet extrem langsam

Abgesehen von den Kopiervorgängen gibt es auch Fehlerberichte darüber, dass das Programm allgemein wesentlich schneller arbeitet, wenn es über die Kommandozeile bedient wird.

cdparanoia stürzt ab oder die angelegten Audiodateien sind leer

Dieses Problem tritt auf, wenn die Funktion zum Kopieren von Hidden-Tracks aktiviert ist, das Laufwerk aber kein Lesen außerhalb des normalen Bereichs einer Audio-CD unterstützt und somit die Hidden-Tracks gar nicht erreichen kann. Da es sich ein Hardwareproblem handelt, hilft nur, die Funktion zu deaktivieren und auf die versteckten Titel zu verzichten.

Lieder beginnen zu früh, wenn ein Cuesheet benutzt wird

Dieses Problem wiederum kann bei manchen CDs auftreten, wenn die Funktion zum Kopieren von Hidden-Tracks abgeschaltet wurde und zugleich die CD als Abbild samt Cuesheet gerippt werden soll. Hierbei werden einige Sektoren am Anfang übersehen, wodurch die Titel alle etwas nach vorne rücken. Die Datei stimmt dann nicht mehr mit den originalen Zeitmarken im Cuesheet überein.