libao will be getting an update soon, and there will soon be a much stronger libao driver in there (from what we've spoken about with the libao guys) they will be taking care of bugs that have been neglected for over a year, or there _will_ be a new maintainer. They say the new libao (alsa09) driver should be in by 1.0.1 which should (in theory) be out soon after the 1.0 release.
That's good, but doesn't change the basic design shortcoming of libao - you still have to know, or at least detect, what module to load. You still have to deal with potentially different parameters per driver.
libAIO avoids that, and IMO all of the hardware drivers in libao should be getting moved to libaio.
I just looked at the current CVS libao. The ALSA driver does look a little bit slicked up, and may succeed in getting the data through this time, but it is still fundamentally broken about period size setups.
The did add a few new drivers, and I just might decide to port a couple of 'em..