Here is a good start. [dis-dot-dat.net]JACK clients are amazingly simple considering the power of the system. JACK is essentially a sound multiplexer server with extremely low latency (depending on the hardware). It doesn't do any of the nifty sample rate conversion or file loading that the sound servers do, which is why it makes sense to have the sound servers around. But if the sound servers were written against JACK, they would co-operate not only with each other, but with any other JACK clients on the system as well.