|
MP3::Tag::File - Module for reading / writing files |
MP3::Tag::File - Module for reading / writing files
my $mp3 = MP3::Tag->new($filename);
($title, $artist, $no, $album, $year) = $mp3->parse_filename();
MP3::Tag::File is designed to be called from the MP3::Tag module.
It offers possibilities to read/write data from files via read(), write(),
truncate(), seek(), tell(), open(), close(); one can find the filename via
the filename() method.
parse_filename()($title, $artist, $no, $album, $year) = $mp3->parse_filename($what, $filename);
parse_filename() tries to extract information about artist, title,
track number, album and year from the filename. (For backward
compatibility it may be also called by deprecated name
read_filename().)
This is likely to fail for a lot of filenames, especially the album will be often wrongly guessed, as the name of the parent directory is taken as album name.
$what and $filename are optional. $what maybe title, track, artist, album
or year. If $what is defined parse_filename() will return only this element.
If $filename is defined this filename will be used and not the real
filename which was set by the MP3::Tag manpage with
MP3::Tag-new($filename)>. Otherwise the actual filename is used
(subject to configuration variable decode_encoding_filename).
Following formats will be hopefully recognized:
- album name/artist name - song name.mp3
- album_name/artist_name-song_name.mp3
- album.name/artist.name_song.name.mp3
- album name/(artist name) song name.mp3
- album name/01. artist name - song name.mp3
- album name/artist name - 01 - song.name.mp3
If artist or title end in (NUMBER) with 4-digit NUMBER, it is considered
the year.
title()$title = $mp3->title($filename);
Returns the title, guessed from the filename. See also parse_filename(). (For
backward compatibility, can be called by deprecated name song().)
$filename is optional and will be used instead of the real filename if defined.
artist()$artist = $mp3->artist($filename);
Returns the artist name, guessed from the filename. See also parse_filename()
$filename is optional and will be used instead of the real filename if defined.
track()$track = $mp3->track($filename);
Returns the track number, guessed from the filename. See also parse_filename()
$filename is optional and will be used instead of the real filename if defined.
year()$year = $mp3->year($filename);
Returns the year, guessed from the filename. See also parse_filename()
$filename is optional and will be used instead of the real filename if defined.
album()$album = $mp3->album($filename);
Returns the album name, guessed from the filename. See also parse_filename()
The album name is guessed from the parent directory, so it is very likely to fail.
$filename is optional and will be used instead of the real filename if defined.
comment()$comment = $mp3->comment($filename); # Always undef
genre()$genre = $mp3->genre($filename); # Always undef
|
MP3::Tag::File - Module for reading / writing files |