MP3::Tag::CDDB_File(3)

NAME
MP3::Tag::CDDB_File - Module for parsing CDDB files.

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 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.

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