IPB

Welcome Guest ( Log In | Register )

> Notice!

Please take a minute to check our Frequently Asked Questions. Use Search to reveal possible related topics.

Also make sure you've read the Forum Guidelines before posting in this forum.

Abbreviations: (will be specified by moderators/administrators)





[X]No Bug[C]Confirmed Bug Report
[F]Fixed Bug[LP]Low Priority Bug Report
[AF]Awaiting Feedback

 
Reply to this topicStart new topic
> ID3v1 bug
AxeL
post Apr 25 2011, 12:36
Post #1


Member


Group: Members
Posts: 1
Joined: 25-April 11
Member No.: 14305
Mp3tag Version: 2.48



I think I've found a small glitch on the ID3 v1 tag management.

When there is a string that is longer than the field length (30 chars for Title, Artist and Album), the software should truncate the string at exactly that field length, i.e. 30 chars.

MP3Tag works as expected but if there is a blank in the position 30, that blank (0x20) is replaced by a NULL (0x0).

For example Let's consider Barry White's "Oh Love, Well We Finally Made It": the corresponding ID3v1 record is:

-------------------------------------------------------------
TAGOh Love, Well We Finally Made.Barry White.....

54 41 47 4f 68 20 4c 6f 76 65 2c 20 57 65 6c 6c
20 57 65 20 46 69 6e 61 6c 6c 79 20 4d 61 64 65
00 42 61 72 72 79 20 57 68 69 74 65 .......
-------------------------------------------------------------

According to me should be:

-------------------------------------------------------------
TAGOh Love, Well We Finally Made Barry White.....

54 41 47 4f 68 20 4c 6f 76 65 2c 20 57 65 6c 6c
20 57 65 20 46 69 6e 61 6c 6c 79 20 4d 61 64 65
20 42 61 72 72 79 20 57 68 69 74 65 .......
-------------------------------------------------------------

Regards

This post has been edited by AxeL: Apr 25 2011, 12:37
Go to the top of the page
 
+Quote Post
DetlevD
post Apr 25 2011, 13:23
Post #2


Member


Group: Full Members
Posts: 4129
Joined: 26-May 06
From: Wuppertal, Germany, Planet Earth
Member No.: 3194
Mp3tag Version: 2.54



QUOTE (AxeL @ Apr 25 2011, 13:36) *
I think I've found a small glitch on the ID3 v1 tag management ....

See: http://www.id3.org/ID3v1
I did not recognize what you mean, does the result of your investigation match the ID3v1 or ID3v1.1 standard or nothing of both?

DD.20110425.1425.CEST


It seems, that it depends on something unknown ...

1.
Using a MP3 test file, which contains only one byte "DD", using ID3v1 tag only, tagging it with the text string "Oh Love, Well We Finally Made It", it results into a correct ID3 TITLE tag field of length 30 Bytes and the last byte is the space character.

CODE
00000000: DD 54 41 47 4F 68 20 4C|6F 76 65 2C 20 57 65 6C | ÝTAGOh Love, Wel
00000010: 6C 20 57 65 20 46 69 6E|61 6C 6C 79 20 4D 61 64 | l We Finally Mad
00000020: 65 20 00 00 00 00 00 00|00 00 00 00 00 00 00 00 | e              
00000030: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000040: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000050: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000060: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000070: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000080: FF                     |                        | ÿ


The same result is given, when the file has an ID3v2 tag too at the beginning of the file.

2.
But I was able to create the following ID3 tag ... if I remember well ... this was the result after removing the ID3v2 tag using Mp3tag tag remove feature.

CODE
00000000: 54 41 47 4F 68 20 4C 6F|76 65 2C 20 57 65 6C 6C | TAGOh Love, Well
00000010: 20 57 65 20 46 69 6E 61|6C 6C 79 20 4D 61 64 65 |  We Finally Made
00000020: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000030: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000040: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000050: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000060: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 00 |                
00000070: 00 00 00 00 00 00 00 00|00 00 00 00 00 00 00 FF |                ÿ


DD.20110425.1638.CEST

This post has been edited by DetlevD: Apr 25 2011, 15:36


--------------------
* Beyond that, don't ask, when you don't know what to do with the answer. *
♥ home is where the heart is ♥
Go to the top of the page
 
+Quote Post
xblkx
post May 21 2011, 04:11
Post #3


Member


Group: Members
Posts: 2
Joined: 21-May 11
Member No.: 14503
Mp3tag Version: 2.48



I have a lot of software engineering experience implementing and validating standards, and I agree that, as described by AxeL, this is a bug. Both standards (ID3v1 and ID3v1.1) specify the beginning of the tag as 'TAG' followed by 30 characters, those characters being the first 30 characters of the title (even if the 30th character is a 0x20) or the entire title zero padded on the right by 0x00 characters to fill the 30 character field for the song title.

The bug probably has to do with either truncating the title one character too short and/or treating it as a string and not binary data (apparently if the file has no ID3v2 tag). In most cases, it would go unnoticed because most devices would visually render a 29-character title or a 30-character title that ends in a space exactly the same way. I'm surprised you were able to observe this, but I agree with you that's it incorrect.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 21st May 2013 - 17:35