MP3::Tag::CDDB_File - Module for parsing CDDB files.
my $db = MP3::Tag::CDDB_File->new($filename, $track); # Name of audio file my $db = MP3::Tag::CDDB_File->new_from($record, $track); # Contents of CDDB ($title, $artist, $album, $year, $comment, $track) = $db->parse();
MP3::Tag::CDDB_File is designed to be called from the MP3::Tag module.
It parses the content of CDDB file.
The file is found in the same directory as audio file; the list of possible file names is taken from the field
cddb_files if set by MP3::Tag config() method.
($title, $artist, $album, $year, $comment, $track) = $db->parse($what);
parse_filename() extracts information about artist, title, track number, album and year from the CDDB record. $what is optional; it maybe title, track, artist, album, year, genre or comment. If $what is defined parse() will return only this element.
Additionally, $what can take values
artist_collection (returns the value of artist in the disk-info field DTITLE, but only if author is specified in the track-info field TTITLE),
title_track (returns the title specifically from track-info field - the
track may fall back to the info from disk-info field),
comment_collection (processed EXTD comment),
comment_track (processed EXTT comment).
The returned year and genre is taken from DYEAR, DGENRE, EXTT, EXTD fields; recognized prefixes in the two last fields are YEAR, ID3Y, ID3G. The declarations of this form are stripped from the returned comment.
An alternative syntax "Recorded"/"Recorded on"/"Recorded in"/ is also supported; the format of the date recognized by ID3v2::year(), or just a date field without a prefix.
$title = $db->title();
Returns the title, obtained from the
'Tracktitle' entry of the file.
$artist = $db->artist();
Returns the artist name, obtained from the
'Albumperformer' entries (the first which is present) of the file.
$track = $db->track();
Returns the track number, stored during object creation, or queried from the parent.
$year = $db->year();
Returns the year, obtained from the
'Year' entry of the file. (Often not present.)
$album = $db->album();
Returns the album name, obtained from the
'Albumtitle' entry of the file.
$comment = $db->comment();
'Trackcomment' entry of the file. (Often not present.)
$genre = $db->genre($filename);