SYNOPSIS

  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();

see MP3::Tag

DESCRIPTION

MP3::Tag::CDDB_File is designed to be called from the MP3::Tag module.

It parses the content of \s-1CDDB\s0 file.

The file is found in the same directory as audio file; the list of possible file names is taken from the field \*(C`cddb_files\*(C' if set by MP3::Tag config() method.

parse()

($title, $artist, $album, $year, $comment, $track) = $db->parse($what); parse_filename() extracts information about artist, title, track number, album and year from the \s-1CDDB\s0 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 \*(C`artist_collection\*(C' (returns the value of artist in the disk-info field \s-1DTITLE\s0, but only if author is specified in the track-info field \s-1TTITLE\s0), \*(C`title_track\*(C' (returns the title specifically from track-info field - the \*(C`track\*(C' may fall back to the info from disk-info field), \*(C`comment_collection\*(C' (processed \s-1EXTD\s0 comment), \*(C`comment_track\*(C' (processed \s-1EXTT\s0 comment). The returned year and genre is taken from \s-1DYEAR\s0, \s-1DGENRE\s0, \s-1EXTT\s0, \s-1EXTD\s0 fields; recognized prefixes in the two last fields are \s-1YEAR\s0, \s-1ID3Y\s0, \s-1ID3G\s0. The declarations of this form are stripped from the returned comment. An alternative syntax \*(L"Recorded\*(R"/\*(L"Recorded on\*(R"/\*(L"Recorded in\*(R"/ is also supported; the format of the date recognized by ID3v2::year(), or just a date field without a prefix.

title()

$title = $db->title(); Returns the title, obtained from the 'Tracktitle' entry of the file.

artist()

$artist = $db->artist(); Returns the artist name, obtained from the 'Performer' or 'Albumperformer' entries (the first which is present) of the file.

track()

$track = $db->track(); Returns the track number, stored during object creation, or queried from the parent.

year()

$year = $db->year(); Returns the year, obtained from the 'Year' entry of the file. (Often not present.)

album()

$album = $db->album(); Returns the album name, obtained from the 'Albumtitle' entry of the file.

comment()

$comment = $db->comment(); Returns the 'Trackcomment' entry of the file. (Often not present.)

genre()

$genre = $db->genre($filename);