You are here: Home » Reply

Reply To: ogg problem.. whatever

#5019

xaviour
Participant

@rpedde wrote:

I wouldn’t mind seeing them.

See URL sent in personal email. Because I did that some times ago so some modified files might be missing. Maybe you should just read the code quickly and if you like what you see then I can work on making a proper patch so that you can test it at leisure. I am not familiar with autoconf/automake so I cannot patch the configuration files.

@rpedde wrote:

A single tag reader would be nice, but again, it’s the C++ nature of it that seems problematic.

I actually used the C bindings of taglib so the hairy binary compatibility problems of C++ have not influence here. Testing with my reference database shows that taglib is as fast or faster than Firefly mp3 parsing functions. This same testing shows that memory consumption is decent. There were a couple of memory leaks. I found them with valgrind and plugged them.

As far as I could see, the only shortcoming of the C bindings is that they do not expose the “reading style” (i.e scan effort in Firefly terminology). A change improving the C bindings should not be to hard to push upstream.

@rpedde wrote:

Wouldn’t mind playing with it though, to see if I could get it working on an embedded target.

I work exclusively on embedded targets (NSLU2 or Storcenter) so there is nothing to worry about. Someone damaged their configurations files but there is a workaround for it.

Finally I just would like to point out that with the code base in subversion, Firefly is better at reading metadata than taglib. However, with my series of patches taglib does a better job than Firefly. This statement is of course valid only for my reference database and your millage might vary.

The biggest problem I see with taglib is that the maintainer is currently very busy and has no time to integrate the patches. It is a pity that support for M4A and WMA is available in Amarok subversion repository but has not been merged yet into the official taglib repository.

As a side note, I have seen some activity on the forum regarding management of the tags from the web interface of Firefly. If this ever was to become a feature, know that taglib has write support and that the API is as simple as the read API.