#9 add ID3-style auxdata support for m4a files

open
Jin
None
5
2009-12-20
2009-03-07
Pirate Jonno
No

Hi. First of all thanks for adding support for libmp4v2, it seems to work fine. However, I like to sort my music by album artist/compilation and the current implementation does not allow this (afaik). Attached is a patch for libmp4v2_handler.cc that allows auxdata for m4a files to be accessed in the same way as files tagged with id3. I did it this way to avoid messing around with how the configuration file is parsed and to make it easy for people with mixed mp3/aac files to use. Currently implemented frames are as follows:

TCOM - corresponds to 'composer'/'writer' tag
TENC - corresponds to 'tool' (ie iTunes 8.0, faac etc)
TRCK - track number, which is formatted as a string "track/total" if such information exists
TPOS - disk number, formatted in the same way
TIT1 - grouping tag
TBPM - bpm/tempo tag
TCMP - compilation flag ("1" if set, "0" if not)
TPE2/TPE4 - both set to album artist tag

However it would be relatively straightforward to add more, eg. to make TPE3 point to album artist just add ' || desiredFrame == "TPE3"' to the if statement before MP4GetMetadataAlbumArtist, or to create some aac-specific naming scheme if you want.

I hope this can be merged with trunk if possible, and if you have any issues you want me to clear up (eg. documentation) please let me know.

Thanks

Discussion

  • Pirate Jonno
    Pirate Jonno
    2009-03-07

    patch to provide aux data support for mp4 files

     
  • Jin
    Jin
    2009-12-20

    Thanks for the patch, sorry it took so long, I'll have a look and get back to you.

     
  • Jin
    Jin
    2009-12-20

    • assigned_to: nobody --> jin_eld
     
  • Pirate Jonno
    Pirate Jonno
    2009-12-21

    Hi. No problem, it just means that the patch has been very well-tested :). Not that you shouldn't double-check it, of course. Anyway I appreciate your efforts, look forward to hearing back from you.