leoshaw / rubyripper

Automatically exported from code.google.com/p/rubyripper
0 stars 0 forks source link

TABLE OF CONTENTS

  1. INTRODUCTION
  2. SECURE RIP METHOD
  3. HOW TO INSTALL 3a. MACOS SUPPORT
  4. CHANGELOG
  5. FAQ
  6. RELEVANT URLS
  7. RUNNING ALL TESTS
  1. INTRODUCTION

Rubyripper aims to deliver high quality rips from audio cd's to your computer drive. It tries to do so by ripping the same track with cdparanoia multiple times and then comparing the results. It currently has a gtk2 and a command- line interface.

Some of it's main features:

  1. SECURE RIP METHOD

The underlying philosophy is that errors are random and therefore will differ with each trial. Since the files don't always match directly proves that at least part of this is true. However, it might be that some read errors are not random and will happen exactly the same with multiple trials. In this case an error would slip through unnoticed.

A completely secure rip can never be guaranteed, neither by Exact Audio Copy (which inspired Rubyripper), nor by any other ripper. Factors like the quality of the audio-cd and the quality of the cdrom drive are very important as well. Despite these problems Rubyripper tries to do it's very best.

The user can set a number of 'A' matches for each chunk of 1000 bytes. Each chunk represents about 0,006 seconds. If, after ripping the track 'A' times, there are chunks that don't match 'A' times, another trial is launched. This time however, the mismatched chunks must match 'B' times, which can be equal, but not smaller to 'A' times.

When Rubyripper has finished the ripping process, a suspicious positions analysis will be added to the logfile. For each second in the file it will be shown how much mismatched chunks there were originally. And at which trial these were corrected or not at all.

It's possible to set a limit to the number of times a track is ripped. For some tracks it seems impossible to ever get a correct rip. The amount of errors left are usually very small though. It's not likely one actually will be able to hear this.

  1. HOW TO INSTALL

Dependencies:

Suggested:

Run from directory: (1) ./bin/rubyripper_gtk2 or (1) ./bin/rubyripper_cli

To install: (1) ./configure --enable-lang-all --enable-gtk2 --enable-cli --prefix=/usr or (1) ./configure --enable-lang=de,hu --enable-gtk2 --enable-cli --prefix=/usr (2) make install The executables will be named rrip_cli and rrip_gui

To uninstall: (1) make uninstall To cleanup: (1) make clean

3a) MACOS SUPPORT

The CLI now works in MacOS. However, if your cdparanoia version doesn't support the -d switch (to set the device), only the default drive can be used. Rubyripper doesn't do this for you, so if you got weird results with freedb fetching, use your other cdrom drive.

A cdparanoia port for MacOS that supports the -d switch can be found here: http://sourceforge.net/project/showfiles.php?group_id=158413

For MacOS on x86 systems cd-discid is not working (ppc does), but discid is: website => http://discid.sourceforge.net/ You can also test the fallback code for creating the discid ourselves, but it may not work on audio-cd's with a data track.

  1. CHANGELOG ---------0.7.0 RELEASE------
    • updated ruby requirement to 1.9
    • massive refactoring and cleanups
    • added lots of unit tests with rspec
    • added a few feature tests with cucumber

---------0.6.2 RELEASE------

---------0.6.1 RELEASE------

---------0.6.0 RELEASE------

---------0.5.7 RELEASE------

---------0.5.6 RELEASE------

---------0.5.5 RELEASE------

---------0.5.4 RELEASE------

---------0.5.3 RELEASE------

---------0.5.2 RELEASE------

---------0.5.1 RELEASE------

---------0.5.0 RELEASE------

---------0.4.4 RELEASE------

---------0.4.3 RELEASE------

----------0.4.2 RELEASE------

----------0.4.1 RELEASE------

----------0.4 RELEASE---------

----------0.3 RELEASE---------

  1. FAQ

Q : Why does the last track go slower than the rest? A : Chances are that you've supplied an offset different than 0 and supplied the option -Z to cdparanoia. A cdparanoia bug prevents finishing ripping the last track if -Z is supplied, so it's automatically removed for the last track.

Q : Will Rubyripper work on any platform other than linux? A : If the same dependencies are available on these platforms, then things will probably just work fine. If some of the dependencies are missing, but you do know one other utility which does just about the same, please report a feature request at the Google bugtracker.

Q : How do I report a bug / request a missing feature? A : Go to http://code.google.com/p/rubyripper/issues/list. The Rubyripper developer will typically respond within one week. You can add your e-mail, so any changes or updates in the bug will be send to you.

Q : How do I get the very latest code (I don't care how many bugs there are)? A : Using git. See the wiki for instructions.

Q : My buttons don't react and give the following error in a terminal: warning: GRClosure invoking callback: already destroyed Callback error A : Upgrade your ruby gtk bindings to a >=0.16.* version.

Q: How can I help translate rubyripper to my language? A: See the wiki for instructions

  1. RELEVANT URLS

Bug tracker + filehosting + subversion server + wiki : http://code.google.com/p/rubyripper/

  1. RUNNING ALL TESTS All feature tests can be run with "cucumber". Ofcourse you should have installed cucumber. This can be done with "gem install cucumber". The "gem" command should be installed by default in any Ruby installation. The feature tests can be found in the features folder.

All unit tests can be run with "rspec". Ofcourse you should have installed rspec. This can be done with "gem install rspec". The "gem" command should be installed by default in any Ruby installation. The rspec tests can be found in the spec folder.