Re: [id3lib-devel] id3v2.4 tags
Brought to you by:
t1mpy
From: David E. <eh...@gm...> - 2008-07-20 22:56:14
|
David Ehrmann wrote: > And a random question: > > Why are there two 00 bytes following the description string (line 3)? > 54 00 I understand; that's 'T.' The next 00 is in the id3 specs and > documented as a delimiter. The third seems to indicate the character > encoding, but 00 is ISO-8859-1, and the following string is clearly > UTF-16 with BOM, like the first string. > > 00000080 54 58 58 58 00 00 00 35 00 00 01 FF FE 41 00 4C > TXXX...5.....A.L > 00000090 00 42 00 55 00 4D 00 41 00 52 00 54 00 49 00 53 > .B.U.M.A.R.T.I.S > 000000A0 00 54 00 53 00 4F 00 52 00 54 00 00 00 FF FE 53 > .T.S.O.R.T.....S > 000000B0 00 74 00 72 00 6F 00 6B 00 65 00 20 00 39 00 00 > .t.r.o.k.e. .9.. > > Changing the 00 preceding FF FE to 01 causes a parse error. The > description is printed by id3v2, but not the value. I think I have my answer. 4.2.6. User defined text information frame This frame is intended for one-string text information concerning the audio file in a similar way to the other "T"-frames. The frame body consists of a description of the string, represented as a terminated string, followed by the actual string. There may be more than one "TXXX" frame in each tag, but only one with the same description. <Header for 'User defined text information frame', ID: "TXXX"> Text encoding $xx Description <text string according to encoding> $00 (00) Value <text string according to encoding> One 00 finishes the character started by 54, the other *two* terminate the string (but if this was UTF-8, one 00 would terminate the string). |