Mp3tag not reading both id3v1 and id3v2 tags in some files

I have some mp3s that I downloaded, so I don't know how they were tagged (dbpoweramp shows the encoder as LAME 3.90a). When I open the files in Mp3tag, it shows that they have only an id3v1 tag. In Winamp, though, I see both an id3v1 and id3v2 tag. The dbpoweramp Windows Explorer extensions also shows both id3v1 and id3v2 tags and claims that the id3v2 tag is id3v2.3 (ANSI). Also, the id3v2.3 tag looks correct when a file is viewed in a binary editor.

This gives problems when trying to edit or convert tags (I need only id3v2.3 ISO-8859-1), since data is often lost by Mp3tag, particularly in long strings and comments.

Attached is a screen shot of one of the files opened in a binary editor. Let me know if you'd like any of mp3 files to figure out what's going on.

Can you provide the complete tag + some bytes from the mp3 stream?
You can use "File > Save selection as" in this editor.

Here you go. Of course this cuts off the id3v1 tag. Mp3tag now sees no tag in the file, while Winamp and dbpoweramp still see the id3v2 tag.

02_Visions_Of_Gaudi.mp3 (48 KB)

The problem in this file is that after the last valid frame TSIZ there's this:
MP3ext MP3ext MP3ext MP3ext MP3ext MP3ext MP3ext MP3ext MP3ext MP3ext
Which is not valid, it should be all zero bytes instead.

You can fix it with the hex editor or try changing a tag with another program, maybe it corrects it.
Maybe Florian wants to do a workaround.

I was also having trouble with the invalid padding done by MP3ext, so I extended my mp3TYRE tool to replace that "string padding" with "zero byte padding" as required by the ID3v2 specs. Moreover, as also mentioned here, I've sent the author of MP3ext some patches which fix this issue.