FreeBSD Manual Pages
ID3V2-DATA(1) User Contributed Perl Documentation ID3V2-DATA(1) NAME MP3::Tag::ID3v2-Data - get_frame() data format and supported frames SYNOPSIS $mp3 = MP3::Tag->new($filename); $mp3->get_tags(); $id3v2 = $mp3->{ID3v2} if exists $mp3->{id3v2}; ($info, $long) = $id3v2->get_frame($id); # or ($info, $long) = $id3v2->get_frame($id, 'raw'); DESCRIPTION This document describes how to use the results of the get_frame function of MP3::Tag::ID3v2, thus the data format of frames retrieved with MP3::Tag::ID3v2::get_frame(). It contains also a list of all supported ID3v2-Frames. get_frame() ($info, $long) = $id3v2->get_frame($id); # or ($info, $long) = $id3v2->get_frame($id, 'raw'); $id has to be a name of a frame like "APIC". See also L<get_frame()|MP3::Tag::ID3v2>. The names of all frames found in a tag can be retrieved with the L<get_frame_ids()|MP3::Tag::ID3v2> function. Using the returned data In the ID3v2.3 specifications 67 frames are defined, which can contain very different information. That means that get_frame returns the information of different frames also in different ways. Simple Frames A lot of the tags contain only a text string and encoding information. If you call ($info, $long) = $id3v2->get_frame($id) for such a frame, $info will contain the text string and $long will contain the english name of the frame. Example: get_frame("TIT2"); # returns ("Birdhouse In Your Soul", "Title/songname/content description") Complex Frames For more complex frames the returned $info is a reference to a hash, where each entry of the hash decribes a part of the information found in the frame. The key of a hash entry contains the name of this part, the according value contains the information itself. Example: get_frame("APIC"); # returns ( { "Description" => "Flood", "MIME Type" => "/image/jpeg", "Picture Type" => "Cover (front)", "_Data" => "..data of jpeg picture (binary).." }, "Attached Picture"); Other Frames Some frames are not supported at the moment, ie the data found in the frame is not returned in a descriptive way. But you can read the data of this frames (and also of all other frames too) in raw mode. Then the complete data field of the frame is returned, without any modifications. This means that the returned data will be almost binary data. Example: get_frame("TIT2", 'raw'); # returns ("\x00Birdhouse In Your Soul", "Title/songname/content description") List of Simple Frames Following Frames are supported and return a single string (text). In the List you can find the frame IDs and the long names of the frames as returned by $id3v2->get_frame(): IPLS : Involved people list MCDI : Music CD identifier PCNT : Play counter TALB : Album/Movie/Show title TBPM : BPM (beats per minute) TCOM : Composer TCON : Content type TCOP : Copyright message TDAT : Date TDLY : Playlist delay TENC : Encoded by TEXT : Lyricist/Text writer TFLT : File type TIME : Time TIT1 : Content group description TIT2 : Title/songname/content description TIT3 : Subtitle/Description refinement TKEY : Initial key TLAN : Language(s) TLEN : Length TMED : Media type TOAL : Original album/movie/show title TOFN : Original filename TOLY : Original lyricist(s)/text writer(s) TOPE : Original artist(s)/performer(s) TORY : Original release year TOWN : File owner/licensee TPE1 : Lead performer(s)/Soloist(s) TPE2 : Band/orchestra/accompaniment TPE3 : Conductor/performer refinement TPE4 : Interpreted, remixed, or otherwise modified by TPOS : Part of a set TPUB : Publisher TRCK : Track number/Position in set TRDA : Recording dates TRSN : Internet radio station name TRSO : Internet radio station owner TSIZ : Size TSRC : ISRC (international standard recording code) TSSE : Software/Hardware and settings used for encoding TYER : Year WCOM : Commercial information WCOP : Copyright/Legal information WOAF : Official audio file webpage WOAR : Official artist/performer webpage WOAS : Official audio source webpage WORS : Official internet radio station homepage WPAY : Payment WPUB : Publishers official webpage List of Complex Frames Following frames are supported and return a reference to a hash. The list shows which keys can be found in the returned hash: AENC : Audio encryption Keys: URL, Preview start, Preview length APIC : Attached picture Keys: MIME type, Picture Type, Description, _Data COMM : Comments Keys: Language, short, Text COMR : Commercial frame Keys: Price, Valid until, URL, Received as, Name of Seller, Description, MIME type, _Logo ENCR : Encryption method registration Keys: Owner ID, Method symbol, _Data GEOB : General encapsulated object Keys: MIME type, Filename, Description, _Data GRID : Group identification registration Keys: Owner, Symbol, _Data LINK : Linked information Keys: _ID, URL, Text OWNE : Ownership frame Keys: Price payed, Date of purchase, Text POPM : Popularimeter Keys: URL, Rating, _Data PRIV : Private frame Keys: Text, _Data RBUF : Recommended buffer size Keys: Buffer size, Embedded info flag, Offset to next tag RVRB : Reverb Keys: Reverb left (ms), Reverb right (ms), Reverb bounces (left), Reverb bounces (right), Reverb feedback (left to left), Reverb feedback (left to right), Reverb feedback (right to right), Reverb feedback (right to left), Premix left to right, Premix right to left SYTC : Synchronized tempo codes Keys: Time Stamp Format, _Data TXXX : User defined text information frame Keys: Description, Text UFID : Unique file identifier Keys: Text, _Data USER : Terms of use Keys: Language, Text USLT : Unsychronized lyric/text transcription Keys: Language, Description, Text WXXX : User defined URL link frame Keys: Description, URL List of Other Frames Following frames are only supported in raw mode: EQUA : Equalization ETCO : Event timing codes MLLT : MPEG location lookup table POSS : Position synchronisation frame RVAD : Relative volume adjustment SYLT : Synchronized lyric/text SEE ALSO MP3::Tag, MP3::Tag::ID3v2 POD ERRORS Hey! The above document had some coding errors, which are explained below: Around line 27: You forgot a '=back' before '=head2' Around line 43: '=item' outside of any '=over' perl v5.32.1 2021-11-05 ID3V2-DATA(1)
NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | POD ERRORS
Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=MP3::Tag::ID3v2-Data&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>