Module: EasyTag::Attributes
- Defined in:
- lib/easytag/attributes/mp3.rb,
lib/easytag/attributes/mp3.rb,
lib/easytag/attributes/mp4.rb,
lib/easytag/attributes/mp4.rb,
lib/easytag/attributes/base.rb
Defined Under Namespace
Modules: ItemType, Type Classes: BaseAttribute, MP3Attribute, MP4Attribute
Constant Summary collapse
- MP3_ATTRIB_ARGS =
[ # title { :name => :title, :id3v2_frames => ['TIT2'], :id3v1_tag => :title, :handler => :read_first_id3, :type => Type::STRING, }, # title_sort_order # TSOT - (v2.4 only) # XSOT - Musicbrainz Picard custom { :name => :title_sort_order, :id3v2_frames => ['TSOT', 'XSOT'], :handler => :read_first_id3, }, # subtitle { :name => :subtitle, :id3v2_frames => ['TIT3'], :handler => :read_first_id3, }, # artist { :name => :artist, :id3v2_frames => ['TPE1'], :id3v1_tag => :artist, :handler => :read_first_id3, }, # artist_sort_order # TSOP - (v2.4 only) # XSOP - Musicbrainz Picard custom { :name => :artist_sort_order, :id3v2_frames => ['TSOP', 'XSOP'], :handler => :read_first_id3, }, # album_artist { :name => :album_artist, :id3v2_frames => ['TPE2'], :handler => :read_first_id3, }, # album_artist_sort_order { :name => :album_artist_sort_order, :handler => lambda { |iface| iface.user_info[:albumartistsort] } }, # album { :name => :album, :id3v2_frames => ['TALB'], :id3v1_tag => :album, :handler => :read_first_id3, }, # compilation? { :name => :compilation?, :id3v2_frames => ['TCMP'], :default => false, :handler => :read_first_id3, :options => {:is_flag => true}, }, # album_sort_order # TSOA - (v2.4 only) # XSOA - Musicbrainz Picard custom { :name => :album_sort_order, :id3v2_frames => ['TSOA', 'XSOA'], :handler => :read_first_id3, }, # genre { :name => :genre, :id3v2_frames => ['TCON'], :id3v1_tag => :genre, :handler => :read_first_id3, }, # disc_subtitle { :name => :disc_subtitle, :id3v2_frames => ['TSST'], :handler => :read_first_id3, }, # media { :name => :media, :id3v2_frames => ['TMED'], :handler => :read_first_id3, }, # label { :name => :label, :id3v2_frames => ['TPUB'], :handler => :read_first_id3, }, # encoded_by { :name => :encoded_by, :id3v2_frames => ['TENC'], :handler => :read_first_id3, }, # encoder_settings { :name => :encoder_settings, :id3v2_frames => ['TSSE'], :handler => :read_first_id3, }, # group { :name => :group, :id3v2_frames => ['TIT1'], :handler => :read_first_id3, }, # composer { :name => :composer, :id3v2_frames => ['TCOM'], :handler => :read_first_id3, }, # lyrics { :name => :lyrics, :id3v2_frames => ['USLT'], :handler => :read_first_id3, }, # lyricist { :name => :lyricist, :id3v2_frames => ['TEXT'], :handler => :read_first_id3, }, # copyright { :name => :copyright, :id3v2_frames => ['TCOP'], :handler => :read_first_id3, }, # bpm { :name => :bpm, :id3v2_frames => ['TBPM'], :handler => :read_first_id3, :type => Type::INT, }, # track_num { :name => :track_num, :id3v2_frames => ['TRCK'], :id3v1_tag => :track, :default => [0, 0], :handler => :read_int_pair, :type => Type::INT_LIST, # don't know if this will ever be useful }, # disc_num { :name => :disc_num, :id3v2_frames => ['TPOS'], :default => [0, 0], :handler => :read_int_pair, :type => Type::INT_LIST, # don't know if this will ever be useful }, # original_date # TDOR - orig release date (v2.4 only) # TORY - orig release year (v2.3) { :name => :original_date, :id3v2_frames => ['TDOR', 'TORY'], :handler => :read_first_id3, :type => Type::DATETIME, }, # comments { :name => :comments, :id3v2_frames => ['COMM'], :id3v1_tag => :comment, :handler => :read_all_id3, :default => [], :options => { :compact => true } }, # comment { :name => :comment, :handler => lambda { |iface| iface.comments.first } }, # album_art { :name => :album_art, :id3v2_frames => ['APIC'], :handler => :read_all_id3, :default => [], }, # date { :name => :date, :handler => :read_date, :type => Type::DATETIME, }, # year { :name => :year, :handler => lambda { |iface| iface.date.nil? ? 0 : iface.date.year } }, # user_info { :name => :user_info, :id3v2_frames => ['TXXX'], :handler => :read_field_list_as_key_value, :default => {}, :options => { :normalize => true, :to_sym => true, :field_list => true }, }, ]
- MP4_ATTRIB_ARGS =
[ # title { :name => :title, :item_ids => ['©nam'], :handler => :read_first_item, }, # title_sort_order { :name => :title_sort_order, :item_ids => ['sonm'], :handler => :read_first_item, }, # artist { :name => :artist, :item_ids => ['©ART'], :handler => :read_first_item, }, # artist_sort_order { :name => :artist_sort_order, :item_ids => ['soar'], :handler => :read_first_item, }, # album_artist { :name => :album_artist, :item_ids => ['aART'], :handler => :read_first_item, }, # album_artist_sort_order { :name => :album_artist_sort_order, :item_ids => ['soaa'], :handler => :read_first_item, }, # album { :name => :album, :item_ids => ['©alb'], :handler => :read_first_item, }, # album_sort_order { :name => :album_sort_order, :item_ids => ['soal'], :handler => :read_first_item, }, # genre { :name => :genre, :item_ids => ['©gen'], :handler => :read_first_item, }, # comments { :name => :comments, :item_ids => ['©cmt'], :handler => :read_first_item, :item_type => ItemType::STRING_LIST, :default => [], }, # comment { :name => :comment, :handler => lambda { |iface| iface.comments.first } }, # lyrics { :name => :lyrics, :item_ids => ['©lyr'], :handler => :read_first_item, }, # date { :name => :date, :item_ids => ['©day'], :handler => :read_first_item, :type => Type::DATETIME, }, # year { :name => :year, :handler => lambda { |iface| iface.date.nil? ? 0 : iface.date.year } }, # apple_id { :name => :apple_id, :item_ids => ['apid'], :handler => :read_first_item, }, # encoded_by { :name => :encoded_by, :item_ids => ['©enc'], :handler => :read_first_item, }, # encoder_settings { :name => :encoder_settings, :item_ids => ['©too'], :handler => :read_first_item, }, # group { :name => :group, :item_ids => ['©grp'], :handler => :read_first_item, }, # compilation? { :name => :compilation?, :item_ids => ['cpil'], :handler => :read_first_item, :item_type => ItemType::BOOL, :default => false, }, # bpm { :name => :bpm, :item_ids => ['tmpo'], :handler => :read_first_item, :item_type => ItemType::INT, :default => 0, }, # copyright { :name => :copyright, :item_ids => ['cprt'], :handler => :read_first_item, }, # track_num { :name => :track_num, :item_ids => ['trkn'], :handler => :read_first_item, :item_type => ItemType::INT_PAIR, :default => [0, 0], }, # disc_num { :name => :disc_num, :item_ids => ['disk'], :handler => :read_first_item, :item_type => ItemType::INT_PAIR, :default => [0, 0], }, # album_art { :name => :album_art, :item_ids => ['covr'], :handler => :read_first_item, :item_type => ItemType::COVER_ART_LIST, :default => [], }, # user_info { :name => :user_info, :handler => :read_user_info, :default => {}, :options => {:normalize => true, :to_sym => true}, }, # subtitle { :name => :subtitle, :handler => lambda { |iface| iface.user_info[:subtitle] } }, # disc_subtitle { :name => :disc_subtitle, :handler => lambda { |iface| iface.user_info[:discsubtitle] } }, # media { :name => :media, :handler => lambda { |iface| iface.user_info[:media] } }, # label { :name => :label, :handler => lambda { |iface| iface.user_info[:label] } }, # composer { :name => :composer, :handler => lambda { |iface| iface.user_info[:composer] } }, # lyricist { :name => :lyricist, :handler => lambda { |iface| iface.user_info[:lyricist] } }, ]