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();
DESCRIPTIONMP3::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 'Performer' or '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();
Returns the 'Trackcomment' entry of the file. (Often not present.)
$genre = $db->genre($filename);