[ID3 Dev] Understanding multiple genres in ID3v23
paul_t100 at fastmail.fm
Tue Apr 13 02:39:24 PDT 2010
Paul Taylor wrote:
> With ID3v24 you can specify multiple genres by writing a null
> character between each genres, and I treat as multiple genres with
> equal precedence, unfortunately this is not how ID3v23 works.
> From the ID3v23 Spec:
> "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)"."
> So if you want to specify two genres and not use the numerical system,
> how do you separate them - with a space ?
> i.e Rock Acapella
> and if you do separate with a space, how do you specify genres which
> contain a space
> i.e Rock Punk Rock Acapella
> should be three genres, but would be read as four.
> and are multiple genres read as refinements , or as genres of equal
> Or should we be putting these in brackets, I though brackets only
> applied to the predefined numeric types (plus RX and CV) but perhaps not.
> In summary I dont expect there is a right anwser, but I would love to
> know whats others are doing, what is the defacto standard.
Done some more delving this is what Foobar2000 does
By default it writes IDv24 tags but if you have
AdvancedTagging/MP3/ID3v2 writer compatabilty mode set it writes ID3v23
, but separates values by a null char (as in the v24 spec) . As a Foobar
user you can specify multiple values by seperating them with a ; but a
semicolon doesnt actually get written to a file a null char is written
instead. When reading values back the values the null chars are
converted to ;'s for display.
To unsubscribe, e-mail: id3v2-unsubscribe at id3.org
For additional commands, e-mail: id3v2-help at id3.org
More information about the ID3v2