Provided by: libaudio-cd-perl_0.05-9build3_amd64
NAME
Audio::CD - Perl interface to libcdaudio (cd + cddb)
SYNOPSIS
use Audio::CD (); my $cd = Audio::CD->init;
DESCRIPTION
Audio::CD provides a Perl interface to libcdaudio by Tony Arcieri, available from http://cdcd.undergrid.net/ Several classes provide glue for the libcdaudio functions and data structures.
Audio::CD Class
init Initialize the Audio::CD object: my $cd = Audio::CD->init; stat Stat the Audio::CD object, returns an Audio::CD::Info object. my $info = $cd->stat; cddb Returns an Audio::CDDB object. my $cddb = $cd->cddb; play Play the given cd track (defaults to 1). $cd->play(1); stop Stop the cd. $cd->stop; pause Pause the cd. $cd->pause; resume Resume the cd. $cd->resume; eject Eject the cd. $cd->eject; close Close the cd tray. $cd->close; play_frames $cd->play_frames($startframe, $endframe); play_track_pos $cd->play_track_pos($strarttrack, $endtrack, $startpos); play_track $cd->play_track($strarttrack, $endtrack); track_advance $cd->track_advance($endtrack, $minutes, $seconds); advance $cd->advance($minutes, $seconds); get_volume Returns an Audio::CD::Volume object. my $vol = $cd->get_volume; set_volume $cd->set_volume($vol);
Audio::CDDB Class
discid my $id = $cddb->discid; lookup Does a cddb lookup and returns an Audio::CD::Data object. my $data = $cddb->lookup;
Audio::CD::Data Class
artist my $artist = $data->artist; title my $title = $data->title; genre my $genre = $data->genre; tracks Returns an array reference of Audio::CD::Track objects. my $foo = $data->tracks($info); my @tracks = @$foo;
Audio::CD::Track Class
name my $name = $track->name;
Audio::CD::Info Class
mode Returns the CD mode, one of PLAYING, PAUSED, COMPLETED, NOSTATUS; my $track = $info->mode; print "playing" if $info->mode == Audio::CD::PLAYING; present Returns true if a disc is present. $cd->play if $info->present; current_track Returns the current track number being played or paused. my $track = $info->current_track; first_track Returns the number of the first track on the CD. my $track = $info->first_track; total_tracks Returns the total number of tracks on the cd. my $track = $info->total_tracks; track_time Returns the current track play time: my($minutes, $seconds) = $info->track_time; time Returns the current disc play time: my($minutes, $seconds) = $info->time; length Returns the disc length time: my($minutes, $seconds) = $info->length; tracks Returns an array reference of Audio::CD::Info::Track objects. my $foo = $info->tracks; my @tracks = @$foo;
Audio::CD::Info::Track Class
length Returns the track length time: my($minutes, $seconds) = $tinfo->length; pos Returns the track position on the CD: my($minutes, $seconds) = $tinfo->pos; type Returns the track type (either TRACK_AUDIO or TRACK_DATA): if ($tinfo->type == Audio::CD::TRACK_AUDIO) { print "audio track\n"; } elsif ($tinfo->type == Audio::CD::TRACK_DATA) { print "data track\n"; } is_audio Returns true if the track is an audio track; equivalent to the test: $tinfo->type == Audio::CD::TRACK_AUDIO ? 1 : 0 is_data Returns true if the track is a data track; equivalent to the test: $tinfo->type == Audio::CD::TRACK_DATA ? 1 : 0
SEE ALSO
Xmms(3)
AUTHOR
Perl interface by Doug MacEachern libcdaudio and cddb_lookup.c by Tony Arcieri