TagLib -> CVS
wheeler at kde.org
Sat Sep 6 23:42:24 BST 2003
-----BEGIN PGP SIGNED MESSAGE-----
At this point several of you are familiar with my work on a new audio meta
Some basic information:
It has an abstract API for handling both ID3v1 and ID3v2 in mp3 files and Xiph
comments in Vorbis files.
It's fast; in my tests it's been about 6x faster (CPU time) than id3lib at
reading ID3v1 and ID3v2 tags and about 3x faster than libvorbis at reading
It's C++ with a Qt / KDE-like API and coding style. While it doesn't link to
Qt, the small toolkit (a wrapper around STL classes that adds things like
unicode support, implicit sharing) has a Qt like API and uses standard KDE
library programming techniques (d-pointers and whatnot).
It has no external dependencies other than a semi-sane STL implementation and
compiler features that KDE already requires (i.e. partial template
The current status is that ID3v1 and ID3v2 work for reading and writing, Ogg
works in read-only. I rewrote most of the Ogg code at N7y and am pretty
close to having it working for writing Ogg comments. (Some of the Ogg page
rendering code gets a bit nasty.)
I have listed on the feature plan adding ID3v2 support to KDE 3.2 meaning
rewriting the KFileMetaInfo plugin to use TagLib. JuK will also most likely
use the API directly (since it's much faster than going through the KFMI
Several others have shown interest for a variety of applications.
So -- in thinking about where the best place for it to go in CVS I think I've
come to the conclusion that extragear makes the most sense. One of the goals
of TagLib has been for it to be something usable outside of KDE and Qt
applications (I'll be writing C bindings at some point) and that would allow
it to have the feature of being easy to access for KDE developers but also
some separation from being "part of KDE" that would make it more attractive
to outside developers. The plan would be to put it there and do a release
just before 3.2...
Anyway -- I'll shut up and just see if there are any objections. If not I'll
get one of the admins to move the CVS repository (from my home machine) in
the next few days.
The API docs are here: http://ktown.kde.org/~wheeler/taglib-api/
And a current snapshot: http://ktown.kde.org/~wheeler/taglib-cvs.tar.gz
And a demo program:
Audience Member: "What was the hardest part of building TeX?"
Donald Knuth: "It was all pretty easy."
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
-----END PGP SIGNATURE-----
More information about the kde-multimedia