Genres (1 Viewer)

Heina

MP Donator
  • Premium Supporter
  • February 4, 2008
    166
    20
    47
    Windhoek, Namibia
    Home Country
    South Africa South Africa
    'ello

    Thanx for an awesome app that I have used extensively.

    I have a couple of Questions regarding how Genre Tags are stored. I spent a lot of time setting up multiple genres for my music. (I browse Genre->Album->Track) It works very well within MediaPortal. My problem unfortunately is with other players. for example on my android device (PowerAmp/WinAmp) there I get a jumble of genres that I do not know where they come from. for example 'Mix/31' instead if 'Mix;Trance' (a single genre instead of two) or 'Rock:(13)' instead of 'Rock;Pop'

    Is there a way that I can store multiple genres that will display correctly in MediaPortal and Other music players?
    According to SOME posts Poweramp is supposed to display genres seperated with a semicolon correctly as multiple genres.

    Sorry if this completely the wrong forum for this question
     

    Heina

    MP Donator
  • Premium Supporter
  • February 4, 2008
    166
    20
    47
    Windhoek, Namibia
    Home Country
    South Africa South Africa
    In case anybody is interested, or has a similar problem. MPTagThat seems to store multiple genre tags that does seem that well supported by media players other than MediaPortal. A single tag with genres separated with semi-colons seems to be somewhat better supported (eg. Windows Media Player & PowerAmp on android) MP3Tag seems to save a single genre tag separated with semi-colons.

    Now my music library's genres display correctly in MP, WMP & on my phone with PowerAmp!
     

    hwahrmann

    Development Group
  • Team MediaPortal
  • September 15, 2004
    4,633
    2,457
    Vienna, Austria
    Home Country
    Austria Austria
    What you have seen is rather an incompatibility with the Players that you are using.
    MPTagThat does everything correct.

    As per ID3 specs found at www.id3.org you may specify the standardised Genres as numeric.
    see http://www.multimediasoft.com/amp3dj/help/index.html?amp3dj_00003e.htm for a description.

    If you have multiple Genres and they are NOT stored as numeric values, then it MUST be separated with a slash (/) ´, in case of id3 v 2.3 or with NULL (00) in case of ID3 v 2.4.

    So when you Add the tags like you propose, then you DON'T have 2 Genres Rock and POP but you have 1 genre named Rock;Pop
     

    Heina

    MP Donator
  • Premium Supporter
  • February 4, 2008
    166
    20
    47
    Windhoek, Namibia
    Home Country
    South Africa South Africa
    I agree that MPTagThat saves multiple genres correctly. Unfortunately most other players seem to be a bit behind in supporting the tags correctly. Since i need my tags to display correctly in certain players other than MediaPortal, i'm unfortunately stuck using incorrect tags, because that is all that works.

    No offence to your great app which i have used extensively to organise my music collection.
     

    FDuenas

    New Member
    November 11, 2013
    2
    0
    Home Country
    Mexico Mexico
    What you have seen is rather an incompatibility with the Players that you are using.
    MPTagThat does everything correct.
    As per ID3 specs found at www.id3.org you may specify the standardised Genres as numeric.
    see http://www.multimediasoft.com/amp3dj/help/index.html?amp3dj_00003e.htm for a description.
    If you have multiple Genres and they are NOT stored as numeric values, then it MUST be separated with a slash (/) ´, in case of id3 v 2.3 or with NULL (00) in case of ID3 v 2.4.
    So when you Add the tags like you propose, then you DON'T have 2 Genres Rock and POP but you have 1 genre named Rock;Pop

    Hi hwahrmann:

    I'm an Old user of ID3-TagIT :) and have seen this MP3Tag-This Is like an updated and very improved version of that old program. But I have experimented the same issues as user Heina for Multiple Genres.

    I tested some different tag editors (ID-tag it, TagScanner, TagAndRename, JetAudio and Windows 7 Explorer tag editor (File Properties/Details) And encounter the same issues after using the MP3-TagThat.

    I know maybe you are stright attattched to the ID3v2 2.3 and 2.4 standards, and maybe seems to be (ID3.org is down, and could find the specifications of how to separate multiple genres) but this is what I have found:

    - When using Mp3-tagThat with ID3v2 2.3 UTF-16 and UTF-8
    The genres seems to be separated by Null values and the know genres code are surrounded by '(' and ')', example. Swing which value is 83, it is stored as: (83), and if I have 'Swing/Easy Listening/Ballad' it will be stored as: (83)(98)(116) which maybe the NULL character (00) is between them
    After changing a file with your program when opening wiht the other tag editors it looks
    1) ID3-Tag it: (83)(98)(116) , and also when editing them with Tag 2 editor they're put as 'undefined'. But hat could be an issue of ID3-Tagit
    2) TagScanner 5.1.643 : Swing (the other genres are discarded)
    3) Tag&Rename 3.7.5: Swing (the other genres are discarded)
    4) JetAudio 8.1.x: Swing (the other genres are discarded)
    5) Windows 7 Explorer tag editor: Swing (98)(116)

    When using Mp3-tagThat with ID3v2 2.4 UTF-16 and UTF-8

    The genres seems to be separated by the '/' and the known genre codes are NOT surrounded by '(' and ')', example. Swing which value is 83, it is stored as: 83, and if I have 'Swing/Easy Listening/Ballad' it will be stored as: 83/98/116

    After changing a file with your program when opening with the other tag editors it looks
    1) ID3-Tag it: 83/98/116, and also when editing them with Tag 2 editor they're are well separated in each item:
    83
    98
    Ballad
    The first two are not detected with its names
    2) TagScanner 5.1.643 : 83/98/116 (the genre names are not displayed)
    3) Tag&Rename 3.7.5: 83/98/116 (the genre names are not displayed)
    4) JetAudio 8.1.x: 83 (the genre names are not displayed and the other genres are discarded)
    5) Windows 7 Explorer tag editor: Swing (the other genres are discarded)


    So does the Genre code wont be surrounded by '()' in ID3v2 2.4?
    I know maybe all those editors could have their issues, but also some media players will, so what I want to suggest is to have some extra settings that could relax those issues with other editors and media players including hardware:

    1) To specify the genre separators for IDv2 2.3 and 2.4, a config for each one, that could be NULL, '/' or custom
    2) To specify if the Genre will be stored ad Code number or the Name of the Genre
    3) A setting to preserve the ID3V2 tag version, if it already exists, so if I alredy have a tag 2.3, and my default setting is 2.4, to preserve the 2.3, or viceversa and make a tool to copy or convert between tag versions, like Id3-Tagit has it. (F7 function)
    4) Add a column to show the tag ID3 V1 and V2 version in the file list.

    Hope at least points 1 and 2 could be taken.

    Thanks and congrat for this good program; I will make a donation to contribute you for this great work.
     
    Last edited:

    FDuenas

    New Member
    November 11, 2013
    2
    0
    Home Country
    Mexico Mexico
    BTW I have looked up for the ID3v2 2.3 and 2.4 specirfications and since Id3.org is down for unknown reasons I have looked up in the web.

    On Github some oen uploaded the specifcations publised in id3 .org

    ID3v2 2.3
    https://github.com/id3/ID3v2.3
    https://github.com/id3/ID3v2.3/blob/master/id3v2.3.0.txt
    It says the specifications for genres muts be:

    TCON
    The 'Content type', which previously was stored as a one byte numeric
    value only, is now a numeric string. You may use one or several of
    the types as ID3v1.1 did or, since the category list would be
    impossible to maintain with accurate and up to date categories,
    define your own.

    References to the ID3v1 genres can be made by, as first byte, enter
    "(" followed by a number from the genres list (appendix A.) and
    ended with a ")" character. This is optionally followed by a
    refinement, e.g. "(21)" or "(4)Eurodisco". Several references can be
    made in the same frame, e.g. "(51)(39)". If the refinement should
    begin with a "(" character it should be replaced with "((", e.g. "((I
    can figure out any genre)" or "(55)((I think...)". The following new
    content types is defined in ID3v2 and is implemented in the same way
    as the numerig content types, e.g. "(RX)".

    RX Remix
    CR Cover
    ---------------------------------------------------------------------
    Here it doesn't mention what separator has to be used. So I understand that the '()' will be used to enclose and '(()', when the genre begins with a '(' in the name.

    And
    Wikipedia says:
    http://en.wikipedia.org/wiki/ID3#ID3v2
    Multiple values in v2.3 tags
    The version 2.3 of the standard prescribes that some fields can contain multiple values separated by the "/" character. The fields that can contain multiple values are:
    TPE1 TCOM TEXT TOLY TOPE

    But TCON is not mentioned

    ----------------------------------------------------------------------

    ID3v2 2.4
    https://github.com/id3/ID3v2.4
    https://github.com/id3/ID3v2.4/blob/master/id3v2.4.0-frames.txt

    2.4 spec says:
    TCON
    The 'Content type', which ID3v1 was stored as a one byte numeric
    value only, is now a string. You may use one or several of the ID3v1
    types as numerical strings, or, since the category list would be
    impossible to maintain with accurate and up to date categories,
    define your own. Example: "21" $00 "Eurodisco" $00

    You may also use any of the following keywords:
    RX Remix
    CR Cover

    Wikipedia
    Multiple values in v2.4 tags
    Version 2.4 of the specification prescribes that the text fields (all the fields starting with a T except TXXX) can contain multiple values separated by a null character. The null character is the one represented by the termination code for the character encoding used.

    So I think 2.4 maybe is correct, but 2.3 could have some problems

    Regards
     
    Last edited:

    hwahrmann

    Development Group
  • Team MediaPortal
  • September 15, 2004
    4,633
    2,457
    Vienna, Austria
    Home Country
    Austria Austria
    As i said above, the multiple genres are stored correctly as per ID3.
    I am using an external library called taglib-sharp, which does the writing.
    I understand that some MediaPlayers are not conforming to id3 standards, but i am a bit surprised that other Tag editirs don't.

    You seem to have done some testing with those other editors.
    Could you add multiple Genres using everyone of those editors and tell me how they store it?

    I might have a look into it and allow alternate savings of the Genre
     

    MJGraf

    Retired Team Member
  • Premium Supporter
  • January 13, 2006
    2,478
    1,385
    Hey guys,
    just stepping into this thread to mention that I did a lot of research on this topic quite some time ago before I implemented exactly this functionality for MP2. All my findings (as well as a comment from you, Helmut), can be found in this thread. Maybe it helps...
    Michael
     

    Users who are viewing this thread

    Top Bottom