FLAC tag order

Hi

I like many am having problems with 'Album Artist'.

The biggest problem is that I have a Cowon Audio i7, a great player except for how it reads FLAC tags. If I have the tag 'Album Artist' or 'AlbumArtist' then the Album is displayed as "ARTIST=album artist" or "RTIST=album artist". This I've discovered after reading something on the MediaMonkey forums must be because the player reads 'Album' from the tag and assumes the next character is an '=' and following that is the album text. As it reads the tags sequentially, this replaces the previous correctly read Album tag. I tested this by adding a new tag that starts with the word Album, everything 1 character after this is displayed as the album.

Most on the various Cowon forums suggest removing any kind of Album Artist tag but this then would create problem in my various players where I don't want to see an entry for every artist on a compilation album.

What determines the order that mp3tag writes the fields in the tag section? Does Extended Tags display the tag info exactly as it is read from the file?

--damole

i think there is a discussion in the forum:
/t/8874/1

I think that discussion seems to be about being able to configure tag writing to be conditional upon which audio format (codec/extension) is being written.

My problem is that for one particular player of mine I need the tags written in a specific physical order for that player to display tag info correctly. I understand that this is a bug in the Cowon firmware and I have raised a support ticket with Cowon which assuming they accept as a bug would still probably mean a new firmware release will be a long way off

Unfortunately, there is no way of influencing tag field writing order in Mp3tag.

Here's a roundabout way that may work for you. If you delete a field, save the file, then add the field back, it will be written after all of the other fields. So let's say you wanted to be sure ALBUMARTIST came last:

#1: Run this action group, which moves the ALBUMARTIST field to a temporary field:

Action type: Format value
Field: TEMPALBUMARTIST
Format string: %albumartist%

Action type: Remove fields
Fields to remove: ALBUMARTIST

#2. Run this action group, which moves the temporary field back to ALBUMARTIST.

Action type: Format value
Field: ALBUMARTIST
Format string: %tempalbumartist%

Action type: Remove fields
Fields to remove: TEMPALBUMARTIST

In a couple of quick tests that I just ran this moves ALBUMARTIST after everything except DATE and TRACKNUMBER. Probably because those two field names are mapped. The above must be done in two steps. You can't just run the second action group following the first by placing them in order and checking them both in the Action Groups dialog. The file(s) must be saved after the first action group is run.

Mp3tag appears to write new fields in exactly the order that you create them in your action groups. If you really wanted to work at it, I think you could order any set of fields by moving them to temporary fields, saving the files, then writing them out using 'Format value' actions in the order that you desire. For example, extending the above to write ALBUM, ALBUMARTIST and TITLE, in that order, you'd do the following. It's still just two action groups:

#1:

Action type: Format value
Field: TEMPALBUM
Format string: %album%

Action type: Format value
Field: TEMPALBUMARTIST
Format string: %albumartist%

Action type: Format value
Field: TEMPTITLE
Format string: %title%

Action type: Remove fields
Fields to remove: ABUM;ALBUMARTIST;TITLE

#2.

Action type: Format value
Field: ALBUM
Format string: %tempalbum%

Action type: Format value
Field: ALBUMARTIST
Format string: %tempalbumartist%

Action type: Format value
Field: TITLE
Format string: %temptitle%

Action type: Remove fields
Fields to remove: TEMPALBUM;TEMPALBUMARTIST;TEMPTITLE


You'll need a hex file editor to view the tags, or use metaflac.exe:

metaflac --list --block-type=VORBIS_COMMENT "Some File.flac"

Using the two action groups from the second example above to order only the ALBUM, ALBUMARTIST, and TITLE fields, the order ends up looking like this:

METADATA block #2
  type: 4 (VORBIS_COMMENT)
  is last: false
  length: 178
  vendor string: reference libFLAC 1.1.4 20070213
  comments: 7
    comment[0]: ARTIST=Lou Donaldson
    comment[1]: GENRE=Jazz
    comment[2]: ALBUM=Blues Walk
    comment[3]: ALBUMARTIST=Lou Donaldson
    comment[4]: TITLE=Blues Walk
    comment[5]: DATE=1958
    comment[6]: TRACKNUMBER=1

Great idea, it works like a charm.

I'm still hoping for a fix from Cowon at some point and maybe they can fix the multiple ARTIST tag bug at the same time, currently they just show the last tag in the file.

Thanks
damole