Some notes about migrating Firefly Media Server to taglib

Xavier Duret xavier.duret at caramail.com
Fri Jan 5 13:33:49 CET 2007


Hello,

I have been migrating the Firefly Media Server ("http://www.fireflymediaserver.org/") to taglib. It was very easy to do because of the simplicity of the taglib API and the fact that taglib was already used to parse Musepack files. I would like to share some remarks and a couple of requests to the list. Please note that I do not represent the Firefly Media Server project. I am just going to do the integration out of the official tree then check whether it is good enough by throwing at it a huge database of audio files. If everything works fine then I will propose the changes to Ron Pedde for milestone 1.1.

I have read in the mailing list that Scott Wheeler was quite upset by the switch to cmake. I would like to point out that cmake is not a good thing for embedded software because it does not support cross-compiling. So while I think cmake is very nice, it would be better if fundamental librairies like libtag stay away from it for now.

The official Firefly supports the following type of files: m4a, aif, flac, mp3, mpc, ogg vorbis, wav and wma. I used taglib with the patch for aac read support (is it from Brian Nickel or from Jochen Issing?) located there: "http://www.isign-softart.de/download/taglib-1.4_with_itunes.tar.bz2". This patched version is quite good but the extraction of the genre does not work and the C bindings do not reflect support for m4a. I also tried the version in the trunk of Amarok but did not get better result. This is weird because the version of Amarok I use on my PC does not have this problem. Can anyone point me to where the development of the aac support for taglib is located? Also the people working on it can have a look at "http://trac.fireflymediaserver.org/browser/trunk/src/scan-aac.c" which implements the same functionality.

I also have the following 2 requests to extend the API:
- Could detection of protected files be added to the API? The C binding would return a simple boolean.
- Could "stremability" of files be added to the API? This is particularly useful for M4A files but I can imagine that other files can have this problem. Sometimes the  metadata is not located at the beginning of the file. Hardware players do not support them so it would be a good thing to avoid lock ups (Roku Soundbridge M1000 comes to mind).  The solution is to run "mp4creator -optimize" on the file but I do not expect the average user to know that.

Gagnez tous les jours un iPod nano. Inscrivez-vous au courriel gratuit CaraMail. Et bénéficiez de 10 SMS gratuits ! Cliquez ici pour gagner : http://promotion.lycos.fr/


More information about the taglib-devel mailing list