stsquad / easytag

A git repo of the development series of EasyTag (as there was no official SCM). Since then the project has moved and is hosted at Gnome in it's own upstream repo.
https://gitlab.gnome.org/GNOME/easytag
GNU General Public License v2.0
29 stars 12 forks source link

bug with predefined genre tag #12

Open WiseLord opened 13 years ago

WiseLord commented 13 years ago

Lot of hardware players and some audio players under Windows (AIMP, WInamp, etc) sometimes show a genre number instead of genre in mp3 files after using easytag. Problem comes when file's genre is one of predefined genres, so easytag converts it into number.

I googled this problem and found some discussions about this bug, like http://comments.gmane.org/gmane.comp.audio.easytag.general/605 or http://old.nabble.com/Problem-with-Genre-tag---how-to-work-around--td28121198.html so it's not only my problem.

WiseLord commented 13 years ago

Here is a little patch which solves a problem:

--- easytag-2.1.6.orig/src/id3v24_tag.c 2011-04-08 23:31:20.000000000 +0300
+++ easytag-2.1.6/src/id3v24_tag.c  2011-04-08 23:32:06.753532997 +0300
@@ -913,7 +913,7 @@
     if (genre_value == ID3_INVALID_GENRE)
         string1 = g_strdup(FileTag->genre);
     else
-        string1 = g_strdup_printf("%d",genre_value);
+        string1 = g_strdup_printf("(%d)",genre_value);

     etag_set_tags(string1, ID3_FRAME_GENRE, ID3_FIELD_TYPE_STRINGLIST, v1tag, v2tag, &strip_tags);
     g_free(string1);
stsquad commented 13 years ago

I've just applied a patch that allows you to force a text only genre. Would this also fix the problem you are having?

WiseLord commented 13 years ago

I think while there is no problem with non-predefined tags, so text-only genre have to fix this problem too. But it seems that placing numeric genre to brackets works fine too (tested with Easytag itself, with Amarok and with AIMP2 under wine).

stsquad commented 13 years ago

So is the use of brackets to enclose tags a part of the ID3 spec?

WiseLord commented 13 years ago

According http://www.id3.org/id3v2.3.0#head-42b02d20fb8bf48e38ec5415e34909945dd849dc (TCON part) brackets were used in id3v1, but id3v2 can as use any text sting in genre tag as be like id3v1 (it means, with brackets, I think). Maybe the best way will be use both number and text ( (#)Genre instead of (#) or Genre), but I didn't test it.

amigadave commented 11 years ago

This patch was merged, so this issue should now be closed:

http://git.gnome.org/browse/easytag/tree/src/id3v24_tag.c#n913