10 Jul 2000 volsung   » (Journeyer)

I was thinking in the shower this morning and realized that my public interfaces to libao are fairly annoying. Why make the application keep track of the driver function table *and* the device state. If real life is any indication, groups of items tend to get separated and lost. I should just make generic wrapper functions that take device id's (think file id's) returned by the ao_open function, lookup the associated function table, and call the right function.

Does this sound familiar? I should have looked at the standard UNIX open() and write() functions. Doh! Reminder to self: Never forget precedent. If UNIX programmers like it, it can't be that bad. :) (I'm sure someone in the audience will have issues with that one.)

Anyway, I've started installing ALSA onto a spare Linux box I have at work. Once I get the hang of it (and get it to work with my AWE32 card), I'll write an ALSA driver for libao. Still waiting for someone (Monty) to tell me how I should get this package into the vorbis tree. Maybe my last email was unclear. (Or maybe Monty is clairvoyant and knows that I needed to fix my code.)

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!