Scott Wheeler wheeler at kde.org
Fri Jul 15 18:38:17 CEST 2005

On Wednesday 13 July 2005 6:01, Rafael Dantas de Castro wrote:
>    Firstly, congrats on your work with taglib, it's a really great
> project. I'd like to ask for a little help a software project. A while
> back, I started to build a tagger (based on id3lib) because I couldn't
> find any that would fit my needs. Eventually, when it got good enough
> for basic use, I stopped working on it and just limped along with it.
> Well, now I see myself wanting to start it up again, and the first
> step I'd like to take is to port it to taglib. What I'd like is a
> truly full-featured tagger, that could take advantages, at the same
> time, of the transparency of taglib (I only handled mp3 previously),
> but, still touch the full power of the particular tagging scheme in
> use (specifically, I'd like support for multiple artists and lyrics in
> id3v2, most of my media collection is mp3's, only a couple of oggs)...

Well, in a nutshell you can't have full abstraction and full features -- if 
you want to deal with the lower level details of specific formats you have 
to, well, write code to deal with those formats.

i.e. You can't set multiple artists for a tag from the generic interface since 
some tag formats don't support that.

Where the formats differ you have to use format specific code.  But if you 
wanted to just do something like (psuedocode):

if(file is an mp3) {
  set multiple artists
else {
  put them all together with commas and use the generic interface...

That's fine.

> how far along is the support for lyrics in taglib??

Non-existant.  (Assuming you mean lyrics3 rather than ID3v2 lyrics.)

> And, a more 
> developer-oriented question, how does taglib differentiate a mp3 from
> an ogg, for example?? Only by extension??

Yes, and it's basically documented in the interface that you shouldn't rely on 
TagLib's format resolution.  Most toolkits provide something for mimetype 
resolution and it seemed silly to duplicate that inside of TagLib.

> And lastly, should I have 
> posted this to mailing-list?? If si, I'm very sorry, and tell me, so I
> do that with any eventual follow-ups..

Uhm, yes.  From the web page, in bold, at the top, "for all questions related 
to TagLib [...] use the development list". ;-)  I get loads of mail.  The 
more of it that's publically archived the easier it is for me to point to a 
link in the future when the same question comes up.


I mean, if 10 years from now, when you are doing something quick and dirty, 
you suddenly visualize that I am looking over your shoulders and say to 
yourself, "Dijkstra would not have liked this", well that would be enough 
immortality for me.
-E. W. Dijkstra

More information about the taglib-devel mailing list