]> diplodocus.org Git - flac-archive/blobdiff - fa-rip
Here's my hacked up multi-file support. Needs a lot of cleanup,
[flac-archive] / fa-rip
diff --git a/fa-rip b/fa-rip
index 5066c798452ba4e9968603eea35530f3fc8766b8..b7a4fc0dab568679b17d5a7888606ac63992734d 100755 (executable)
--- a/fa-rip
+++ b/fa-rip
@@ -120,6 +120,7 @@ sub tags_file {
 sub tags {
     my $device = shift;
     my $trackcount = shift;
+    my $no_mb = shift;
     my $mb;
     my @results;
     my $album;
@@ -127,6 +128,10 @@ sub tags {
     my $various;
     my $seen_various;
 
+    tags_file('candidate-tags-0', $trackcount, 0);
+
+    defined($no_mb) and $no_mb and return;
+
     if (defined($device)) {
         $mb = new MusicBrainz::Client::Simple (device=>$device);
     } else {
@@ -138,8 +143,6 @@ sub tags {
         die($mb->get_error);
     }
 
-    tags_file('candidate-tags-0', $trackcount, 0);
-
     for $album (@results) {
         $i++;
 
@@ -163,7 +166,7 @@ sub rip {
 
     $device ||= '/dev/cdrom';
 
-    exec('cdparanoia', '-d', $device, "1-$trackcount", 'wav');
+    exec('cdparanoia', '-Bd', $device);
     # exec prints its own error message so just
     die;
 }
@@ -180,6 +183,7 @@ sub make_post_processor {
 }
 
 MAIN: {
+    my $no_mb;
     my $post_processor;
     my $trackcount = 99;
     my $help;
@@ -187,6 +191,7 @@ MAIN: {
 
     GetOptions(
                'device|d=s' => \$CDDEV,
+               'no-musicbrainz|m' => \$no_mb,
                'post-processor|p=s', \$post_processor,
                'tracks|t=i' => \$trackcount,
                'help|h|?' => \$help,
@@ -199,7 +204,7 @@ MAIN: {
 
     make_post_processor($post_processor);
     $trackcount = mkcue($CDDEV, $trackcount);
-    tags($CDDEV, $trackcount);
+    tags($CDDEV, $trackcount, $no_mb);
     rip($CDDEV, $trackcount);
 }
 
@@ -248,9 +253,8 @@ ignoring data tracks.
 
 =item CDDEV
 
-B<fa-rip> uses this to rip audio and save the cuesheet for a CD.  It
-makes some effort to check some common device names for FreeBSD,
-Linux, and NetBSD by default.
+B<fa-rip> uses this to rip audio and save the cuesheet for a CD.
+MusicBrainz::Client can usually figure this out automatically.
 
 =back