ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/Convert-CD/eg/playaudio
Revision: 1.1
Committed: Tue Jun 10 14:53:22 2003 UTC (23 years, 4 months ago) by root
Branch: MAIN
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 #!/usr/bin/perl
2    
3     # feeds all AUDIO tracks into sox. might work only
4     # on little-endian machines, so BEWARE!
5    
6     $PLAY = "play -traw -r44100 -c2 -sw - >/dev/null";
7    
8     use Convert::CD::Cue;
9    
10     my $toc = new Convert::CD::Cue path => $ARGV[0];
11     my $cd = $toc->read;
12    
13     open PLAY, "|-", $PLAY
14     or die "@PLAY: $!";
15    
16     $| = 1;
17    
18     for my $track ($cd->track) {
19     next unless $track->{mode} eq "AUDIO";
20     print "playing ", $track->as_string, "\n";
21    
22     my $size = $track->size;
23    
24     for (my $ofs = 0; $ofs < $size; $ofs += $track->{datasize} * 16) {
25     my $data = $track->read ($ofs, $track->{datasize} * 16);
26     syswrite PLAY, $data;
27     printf "\r%03.2f", $ofs / $size;
28     }
29     }
30    
31