X-Git-Url: https://diplodocus.org/git/flac-archive/blobdiff_plain/e9aa850faa0516c3ec1b54bb5b437816d192b00c..956d1d13564d3a830d2ec2e817d95c521857ce3d:/fa-rip diff --git a/fa-rip b/fa-rip index 5066c79..b7a4fc0 100755 --- 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 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 uses this to rip audio and save the cuesheet for a CD. +MusicBrainz::Client can usually figure this out automatically. =back