Help - Search - Members - Calendar
Full Version: Tag ID3v2... Why not?
Hydrogenaudio Forums > Lossy Audio Compression > MP3 > MP3 - General
muaddib2
Foobar2K's tag writing tool has only ID3v1 tag and it
also has an option to remove ID3v2 tags from updated files.
Why is that? Is that a bad thing to have ID3v2 in the mp3 file? unsure.gif

thanks a lot
-muaddib
rpop
OK, I've searched through 18 pages of results and managed to find the following complaints:

- hard to implement
- cause seeking errors in vbr files

and from Roberto
QUOTE
-Lack of backward and forward compatibility
-You can't create your own tags - you must use predefined ones
-Fux0rs VBR headers, LAME headers and whatnot
-Chokes everything that doesn't recognizes them
GeSomeone
It's not very bad to have an id3v2 tag in an mp3, as long as all the players you ever use will support it or at least skip it smile.gif.

The main gripe is: bad design (whole file has often to be rewritten, portability problems (for non x86 platforms). Developers seem to prefer Ape2 tags by a long shot.
--
Ge Someone
Mike Giacomelli
QUOTE
Developers seem to prefer Ape2 tags by a long shot.


I know one developer who prefers id3v2. It does have a few advatages according to him: better support for eastern aplhabets, more flexibility for programmers
torok
I've had many files corrupted by ID3v.2 tags when I used to use them. It's all APE2 for me now.
Xenno
With any mp3 encoding I do, I have LAME write padded IDv2 tags only. For any mp3's I've gotten elsewhere, I have Media Center strip out the IDv1 tags. Nary an mp3 has failed on any player or portable I've used to date...including FooBar.

xen-uno
Mgz
QUOTE (torok @ Jun 19 2003 - 05:11 PM)
I've had many files corrupted by ID3v.2 tags when I used to use them. It's all APE2 for me now.

try that MP3 with your portable player wink.gif (/me feel the pain dry.gif


I guess I will stick with IDTag for a while now



One More thing, ID3Tagv2 is Insecure (some evil tag can cause code exec or something like that, IIRC Winamp and a lot other player suffer this bug last year
Mike Giacomelli
QUOTE (torok @ Jun 19 2003 - 04:11 PM)
I've had many files corrupted by ID3v.2 tags when I used to use them. It's all APE2 for me now.

Get a decient tagger? I did 10k ID3v2 tags before I found APE tags and never once corrupted an MP3.

QUOTE
One More thing, ID3Tagv2 is Insecure (some evil tag can cause code exec or something like that, IIRC Winamp and a lot other player suffer this bug last year


Winamp is insecure. Metadata can't execute or do anything. Only a player can do that.
muaddib2
Well, I didn't knew about APE tags.
I saw that FB2K can make (and read) these kind of tags, so I tried them just to find that Winamp can't read them.
The limited ID3v1 tags are not enough for me and I can't use FB2K for playback for just one reason...
I need the feature of having different EQ settings for each song!
Unfortunately FB2K doesn’t have this feature. (winamp has it)
I don't need a seek bar or any other GUI then the one FB2K has, but I need different EQ settings for each song.

I have a bowling where I play only MP3 music, and I have many MANY different songs from different artists/albums. So I need to set the EQ frequencies individuality (song by song) so all the music will sound with the same bass/treble equalization. <-- that's a hard work :'(
What I really want is a software that will normalize all frequencies to a predefined level, so all songs will sound the same. Not just the volume, as MP3Gain does, but all frequencies.
I don't know if this is possible... but man... this would be wonderful!! tongue.gif

Any advices will be greatly appreciated!

Thanks a lot,
-muaddib
Garf
I'll see if I can add that feature to foobar.

The next Winamp version is reported to have APE2 support, I think.
muaddib2
Thank you Garf! That would be GREAT! tongue.gif
kode54
QUOTE (Mike Giacomelli @ Jun 19 2003 - 02:05 PM)
better support for eastern aplhabets
Bullshit.
QUOTE
more flexibility for programmers
Also bullshit.
/\/ephaestous
QUOTE (Mike Giacomelli @ Jun 19 2003 - 05:05 PM)
QUOTE
Developers seem to prefer Ape2 tags by a long shot.


I know one developer who prefers id3v2. It does have a few advatages according to him: better support for eastern aplhabets, more flexibility for programmers

APE2 is UTF-8, internacionalization doesn't get better than Unicode.
APE2 is a HELL Lot easier to implement than ID3v2
AngelGR
QUOTE
QUOTE
(Mike Giacomelli @ Jun 19 2003 - 02:05 PM)
better support for eastern aplhabets

Bullshit.
QUOTE
more flexibility for programmers

Also bullshit.


That was a constructive, useful, very well explained, and polite answer. You're increasing the level of this forum, and I'm learning a lot. Thanks.
westgroveg
This may be useful.
Jebus
QUOTE (westgroveg @ Jun 23 2003 - 12:36 AM)
This may be useful.

Man, that page just won't go away will it?
westgroveg
QUOTE
QUOTE
QUOTE
(Mike Giacomelli @ Jun 19 2003 - 02:05 PM)
better support for eastern aplhabets

Bullshit.
QUOTE
more flexibility for programmers

Also bullshit.


That was a constructive, useful, very well explained, and polite answer. You're increasing the level of this forum, and I'm learning a lot. Thanks.


Well he is a FB2K Moderator so you have to expect that wink.gif .
sramov
QUOTE (muaddib2 @ Jun 21 2003 - 11:54 PM)
I need the feature of having different EQ settings for each song!
Unfortunately FB2K doesn’t have this feature. (winamp has it)

Winamp eq is very, very bad at quality, don't use it. It makes hiroshima of sound.
Jan S.
QUOTE (sramov @ Jun 23 2003 - 10:56 PM)
QUOTE (muaddib2 @ Jun 21 2003 - 11:54 PM)
I need the feature of having different EQ settings for each song!
Unfortunately FB2K doesn’t have this feature. (winamp has it)

Winamp eq is very, very bad at quality, don't use it. It makes hiroshima of sound.

Winamp's eq was changed a couple of versions ago.
I haven't seen any test of the current eq.
Jan S.
Original.
winamp 2.77
winamp 2.91

You can see that winamp's old eq is very buggy. But the new one should be better.

edit: it seems like I did a mistake in the test...hang on.
edit2: ok, the test was correct. This shows how the old eq fails. It does however not say that the new one is perfect; only that it appears to be much better than the old one.
netarchy
In terms of the winamp EQ: On my windows machine, I have used the winamp eq a few times and overall (personal preference mind you) I do not like the way it alters the sound (maybe its the introduced distortions, or just bad eq settings).

As for ID3v2: I personally have not had any problems writing/using mp3s with ID3v2 tags, but I would have to say APE2 tags are a bit more flexible IMHO.

In the end, I would imagine it really boils down to personal preference. Granted, there are many things that *can* go wrong implementing an id3v2 tag into an mp3, but really there could be a similar number of things that could go wrong with any other tagging measure (granted, most likely caused by a bug or misconfiguration of some sort), but if YOU like the tags, use them. It IS your music after all.
ph34r.gif


Linux: Its not just for breakfast anymore.
Jan S.
QUOTE (netarchy @ Jun 24 2003 - 12:33 AM)
In terms of the winamp EQ: On my windows machine, I have used the winamp eq a few times and overall (personal preference mind you) I do not like the way it alters the sound (maybe its the introduced distortions, or just bad eq settings).

My test doesn't show anything about what happens when you actually use the eq. It could be fucked as hell. It only shows that the roll-off from the old version is gone.
LoKi128
Here is what I think about ID3v2 tags...

I've been using them for a LONG time. I have thousands of MP3s, all with both V1 and V2 tags. I also have a JVC car player which really dosn't care about the v2 tags. According to some guy over at Ars Technica (I think), one can also write custom tags in v2... but I don't know if that is true or not.

The thing is, everyone bitches at the fact that the tags are written at the end of the file. Now, I am only an amateur programmer, but why can't someone writing an audio app do something like this (metacode):

tagclass oldtag; // define a variable with the correct tag structure
oldtag = readtag(file);
modifyAudio();
writetag(file, oldtag);

TADA! Have the functions handle all the offset issues, etc. Really... coding issues should NOT be a problem at all. I think the problem is more of an "ego" problem. Each person thinks they can do better. So now we have ID3v1, ID3v2, APE1, APE2, OGG... did I miss any? All for the simple task of writting text into a file. Sigh...
netarchy
Jan S.: I should rephrase my EQ statement, I do not like the way it sounds most likely because I am mixing the eq improperly wink.gif (I have not much experience using any type of equalizer).
CyberInferno
QUOTE (LoKi128 @ Jun 23 2003 - 02:42 PM)
So now we have ID3v1, ID3v2, APE1, APE2, OGG... did I miss any? All for the simple task of writting text into a file. Sigh...

There's Lyrics3 v2.0, too. That's what Tagger (using Tag) writes if the names are too long. Winamp doesn't get it (without an addon plugin), but somehow Foobar2000 interprets it just fine.
TZOTZIOY
QUOTE (Garf @ Jun 22 2003 - 10:58 AM)
The next Winamp version is reported to have APE2 support, I think.

Do you have any URLs handy about that?
I only use Winamp because I can control winamp through COM (with WinampCom plugin), so I can control it through my Python programs, but the lack of APE2 support forces me to do tricks with dual - triple ID3v1 tags in order to store my metadata for organising my songs (MPC's are no problem) and keep compatibility with playing them...
Is there an API for FB2K that allows me to control it externally? (win messages, COM, whatever?)
Freaky
QUOTE (TZOTZIOY @ Jun 24 2003 - 11:02 AM)
Is there an API for FB2K that allows me to control it externally? (win messages, COM, whatever?)

Sounds like you want foo_remote; lets you control FB2K with windows messages.
ErikS
QUOTE (LoKi128 @ Jun 23 2003 - 11:42 PM)
I've been using them for a LONG time. I have thousands of MP3s, all with both V1 and V2 tags. I also have a JVC car player which really dosn't care about the v2 tags. According to some guy over at Ars Technica (I think), one can also write custom tags in v2... but I don't know if that is true or not.

Yes, it's true.

QUOTE
The thing is, everyone bitches at the fact that the tags are written at the end of the file.

Should be "beginning of the file"

QUOTE
Now, I am only an amateur programmer, but why can't someone writing an audio app do something like this (metacode):

tagclass oldtag; // define a variable with the correct tag structure
oldtag = readtag(file);
modifyAudio();
writetag(file, oldtag);


What do you want to accomplish with this code? But of course there are several classes to handle the various tags in various programming languages. Which one do you feel is missing?

QUOTE
TADA! Have the functions handle all the offset issues, etc. Really... coding issues should NOT be a problem at all. I think the problem is more of an "ego" problem. Each person thinks they can do better. So now we have ID3v1, ID3v2, APE1, APE2, OGG... did I miss any? All for the simple task of writting text into a file. Sigh...


There were several good reasons for abandoning version 1 of the ID3 tag. All the others fixed those problems, but both ID3v2 and Ogg are tricky to use (for the programmer), and that's where Ape2 tags comes in as it is both fairly easy to code and flexible to use.
LoKi128
That code was just an example. The point I tried to get across is that the tagging system is not that big of a hurdle to overcome. I mean, how are ID3v2 and OGG harder to work with when writing a program? After all, Winamp handles both perfectly well. So the excuse that they are harder to deal with for programers is a non-issue.

Which then leaves the question... why so many tagging systems? And don't use the crap excuse "lots of choices, like there are linux distros". The fact of the matter is that the only reason people hate ID3v2 is because of the personal believes, not because of a technical issue. Are there things that can be improved? Of course! No tagging system is perfect. But fragmenting the audio community will not help anyone, specially over something as simple as this.

And btw, don't confuse this issue with having many codecs available. Having a high-quality alternative to MP3 and others makes the codec developers try to achieve more, you know? It's competition. But the same situation does not occur with the tagging systems. With tags it's like a holy war, with people going as far as removing the offending tags whenever you open a file, for example. I would really hate a player that transcoded my MP3s into another codec just because the author thinks that CodecX is better than CodecY. And yes, I know you can turn it off. It's the principle...
Peter
QUOTE (LoKi128 @ Jun 24 2003 - 02:40 PM)
That code was just an example. The point I tried to get across is that the tagging system is not that big of a hurdle to overcome. I mean, how are ID3v2 and OGG harder to work with when writing a program? After all, Winamp handles both perfectly well. So the excuse that they are harder to deal with for programers is a non-issue.

Which then leaves the question... why so many tagging systems? And don't use the crap excuse "lots of choices, like there are linux distros". The fact of the matter is that the only reason people hate ID3v2 is because of the personal believes, not because of a technical issue. Are there things that can be improved? Of course! No tagging system is perfect. But fragmenting the audio community will not help anyone, specially over something as simple as this.

And btw, don't confuse this issue with having many codecs available. Having a high-quality alternative to MP3 and others makes the codec developers try to achieve more, you know? It's competition. But the same situation does not occur with the tagging systems. With tags it's like a holy war, with people going as far as removing the offending tags whenever you open a file, for example. I would really hate a player that transcoded my MP3s into another codec just because the author thinks that CodecX is better than CodecY. And yes, I know you can turn it off. It's the principle...

Have you ever written actual code to read/write id3v2 tags or used official id3v2 libraries, mr. know-it-all ? I know that some other people who posted in this thread did.
dev0
AFAIK there is no such thing as OGG tags. There only is the Vorbis tagging, which is being used by other formats (FLAC), too.

dev0
LoKi128
Doh! Yeah, Vorbis not OGG, my bad.

and Z, don't get angry man. I know I shouldnt have said that comment alluding to FB2k as soon as I posted, but it was too late (and I didn't want to feel cheap by editing it out). It's not a personal attack, or an attack on the program. No, I have not written code that uses ID3v2, but the guys over at Nullsoft seem to deal with it just fine. And I think Apple uses it to tag files in iTunes.

I mean, there is nothing wrong with any other tag system. But I was trying to answer the question presented in the thread, mixed in with some of my own opinions. "Tag ID3v2... Why not?". There is no reason not to use ID3v2. That is all.
Peter
QUOTE (LoKi128 @ Jun 24 2003 - 03:24 PM)
Doh! Yeah, Vorbis not OGG, my bad.

and Z, don't get angry man. I know I shouldnt have said that comment alluding to FB2k as soon as I posted, but it was too late (and I didn't want to feel cheap by editing it out). It's not a personal attack, or an attack on the program. No, I have not written code that uses ID3v2, but the guys over at Nullsoft seem to deal with it just fine. And I think Apple uses it to tag files in iTunes.

I mean, there is nothing wrong with any other tag system. But I was trying to answer the question presented in the thread, mixed in with some of my own opinions. "Tag ID3v2... Why not?". There is no reason not to use ID3v2. That is all.

I don't care if your comment had anything to do with fb2k or not, the problem is that you want to argue with people who actually have experience with dealing with id3v2 libraries, while you don't seem to have any clue about the situation.
Id3v2 is a very nice example of a poorly-designed standard, even their official libraries still have issues (ask kode54 if you want more details on that), the sooner everyone moves to something else (such as APEv2), the better.
It's not about writing the tag at the beginning of file (Vorbis comments are stored at the beginning of file too), it's about serious issues with the standard itself, such as supporting multiple different character sets instead of forcing unicode (which allows any character to be stored correctly), so code reading the tag needs separately handle all of character encodings allowed by the "standard" (even official id3v2 libraries have major issues with that); or using field codes instead of full field name strings (no backwards compatibility, adding new fields requires changes in the "standard").
Jan S.
QUOTE (Garf @ Jun 22 2003 - 09:58 AM)
I'll see if I can add that feature to foobar.

The next Winamp version is reported to have APE2 support, I think.

He who knows what's good.
Mike Giacomelli
QUOTE (kode54 @ Jun 22 2003 - 12:59 AM)
QUOTE (Mike Giacomelli @ Jun 19 2003 - 02:05 PM)
better support for eastern aplhabets
Bullshit.
QUOTE
more flexibility for programmers
Also bullshit.

Heres the comments I'm referenceing:

QUOTE
Lack of desynchronization means that the tags can confuse old MP3 players if they contain certain sequences (with software that's not a problem; with hardware it is).
String values are stored as UTF-8, which whilst acceptable for English is horrible for Far Eastern languages; UTF-16 is a much better (more efficient) encoding. ID3v2 allows both.
The size is extremely limited (8,000 bytes); this limit effectively prevents one from storing e.g. album art within the file. The "solution" is to use links -- but links are fragile. If a file contains a link to http://www.some-server.tld/path/to/file there's no guarantee that in X years time when I want to follow the link that it'll still exist. Embedded data, whilst larger, is far safer -- if I have the file, I have the data.
There just aren't that many predefined item types. Sure, one can create one's own, but then one loses interoperability. There's no standardized way of creating self-describing custom items. There is in ID3v2.
They can't (or at least, shouldn't be) be mixed with ID3v1 tags; but older (especially hardware) players need ID3v1, because it's all they understand.


The above is from a programmer who did some tag stuff with Winamp plugins IIRC.

http://arstechnica.infopop.net/OpenTopic/p...5965#2100915965

Is he correct?
ErikS
QUOTE
Lack of desynchronization means that the tags can confuse old MP3 players if they contain certain sequences (with software that's not a problem; with hardware it is).


Simple solution: keep only text in your tags and you will not have any random synchwords in the tag.

QUOTE
The size is extremely limited (8,000 bytes); this limit effectively prevents one from storing e.g. album art within the file. The "solution" is to use links -- but links are fragile. If a file contains a link to http://www.some-server.tld/path/to/file there's no guarantee that in X years time when I want to follow the link that it'll still exist. Embedded data, whilst larger, is far safer -- if I have the file, I have the data.


It's not a limitation but a strong recommendation. It's way better to keep images in their own container separate from the audio data. This way you can view it with any image viewer you like, you will save diskspace since most images I've seen attached to files (cover art) is the same for all tracks in the album. There is no need to have links to webpages - file://./cover.jpg is better IMO.

QUOTE
String values are stored as UTF-8, which whilst acceptable for English is horrible for Far Eastern languages; UTF-16 is a much better (more efficient) encoding. ID3v2 allows both.


It's a factor 2 to 3 times bigger with asian characters. The ratio is opposite with English haracter set so I think it will even out. But even if it doesn't, why is it such a big deal to have a few hundred bytes bigger tag because of UTF-8, while at the same time you're in favour of putting whole images in the tag and think that 8000 bytes is too little?

QUOTE
There just aren't that many predefined item types. Sure, one can create one's own, but then one loses interoperability.


There are plenty IMO. And if the standard fields are not enough, what's stopping you to create your own? Interoperability?? Taggers should be able to show the "unknown" fields as a string list, so please don't give me that.

QUOTE
There's no standardized way of creating self-describing custom items. There is in ID3v2.

It can't be any easier: you just add it. Exactly the same way as with ID3v2's TXXX frame.

QUOTE
They can't (or at least, shouldn't be) be mixed with ID3v1 tags; but older (especially hardware) players need ID3v1, because it's all they understand.

Why not?
Iconoclast_a
QUOTE (muaddib2 @ Jun 21 2003, 11:54 PM)
What I really want is a software that will normalize all frequencies to a predefined level, so all songs will sound the same. Not just the volume, as MP3Gain does, but all frequencies.
I don't know if this is possible... but man... this would be wonderful!! tongue.gif

Any advices will be greatly appreciated!

Thanks a lot,
-muaddib

Perhaps this could be helpful...

Voxengo - Soniformer VST
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.