[LAD] RDF libraries, was Re: [ANN] IR: LV2 Convolution Reverb

David Robillard d at drobilla.net
Fri Mar 11 18:22:01 UTC 2011

On Fri, 2011-03-11 at 12:08 +0100, Olivier Guilyardi wrote:
> On 02/25/2011 10:00 PM, David Robillard wrote:
> > On Fri, 2011-02-25 at 21:09 +0100, Olivier Guilyardi wrote:
> >> That said there is another big problem. This glib dependency, it's way too heavy
> >> for mobile deployment.
> > 
> > Glib was the most effective route of getting the job done - rewriting
> > the few bits that are required is not an effective use of my time right
> > now (it's not exposed in the API, so it's not a compatibility issue, and
> > there's a ton of more pressing LV2 things that need doing).
> > 
> > I'm not a huge fan of wheel-reinventing, and on PCs glib is about as
> > unoffensive a dependency as they come. On mobile, I guess that meg or so
> > actually makes a difference.
> > 
> > Replacing glib will not be very difficult, very little of it is used:
> > just a balanced BST, dynamic array, and ideally a hash table or trie
> > other appropriate structure for string interning (the BST would do for
> > this part, with a bit of a performance cost). Good old-fashioned data
> > structure implementation is my favourite thing to do, but unfortunately
> > there is no shortage of more pragmatic things that need doing ;)
> > 
> > Perhaps Stefano's NASPRO core work will do, or using C++ internally, or
> > just tearing the required bits out of glib itself. Sqlite has an
> > in-memory hash table IIRC. Code abounds.
> > 
> > Present a viable alternative, and I'll switch sord/slv2 to it, but I
> > have no good reason to invest time in reinventing glib right now.
> I will try and submit a patch to remove glib. It'll take some time because I
> have dozens of other things to do, but I will work on this. I had a quick look
> at sord, it seems it only needs glib's sequence and hash table. Is this correct,
> or will you need some more utilities?

Overall I need sequence, hash table (or hash table like thing, I'll
probably use a radix tree), and module loading (currently still POSIX in

No rush, I may make the relevant lib myself soon if you don't beat me to
it, I just don't want to hold up the next release for it.



More information about the Linux-audio-dev mailing list