For anyone heading pi-wards in future, I tried out Perry's advice and found dropping to 32khz as well as smarter resource management means I can run three concurrent SndBufs (with pans) and a three effect fx chain (including a mighty JCReverb!) simultaneously. It's modest, but enough for me to achieve the ambient driftyness I wanted. YMMV!

Cheers

Stuart


From: Perry Cook <prc@CS.Princeton.EDU>
Thoughts from the battlefield:

One nice thing about the Pi is that it supports many
sample rates.  So if you can run at 22.05k or even
16k or less, then you'll get much more bang for
your buck.

Also, you might look into using WvIn (non looping)
or WavLoop (looping), rather than SndBuf, because
I think I remember that these are slightly more
efficient.

Look into using some long delay lines (non-interpolating),
with feedback.  These can really fatten up a texture without
requiring much CPU.

Also be judicious about your efx, some will take more
CPU than others.

Finally, if a wave is not playing sound, unchuck it at the
end of the chain, and it won't use any CPU while muted.
Keeping track of what's actually sounding, and muting
the rest (by unchuck) can really help.

Prc