On Wed, Sep 23, 2009 at 10:27:03PM +0200, Guido Scholz wrote:
The clalsadrv lib is one of my first sins - it was originally
developed to clean up the ALSA device code in AMS, and later
also used in Jaaa, Japa, Aeolus, and some others.
It provides a single C++ class that wraps the rather convolved
code required to initialise an ALSA device for mmapped access,
also doing the conversion from/to floats, and is similar to
Jack's ALSA backend on which it was originally based.
It makes the task of writing apps that both support Jack and
ALSA a bit easier, basically you have to create a RT thread
that just executes a loop calling methods provided by the library,
and the same audio processing function that would also be called
from your Jack process callback. If used in this way it provides
callback based access to ALSA.
It hasn't been maintained for some time, and I always use all
the apps that use it with Jack, so it may be in need of some
updates (for things like big-endian sample formats and such).
If it fails for your ALSA device just let me know, it can
probably be fixed easily in that case.
Ciao,
--
FA
Io lo dico sempre: l'Italia è troppo stretta e lunga.