The static thing only happens with WAVE files that are 16-bit, mono, 11025 Hz. Converting that same file to 8-bit works, or to 22050 Hz works, or to stereo works. It's also only in the streaming code since that same file loaded through ds.cpp plays fine. The only thing that I can figure is that it's some type of buffer size issue. Actually I know it's a buffer size issue, just not sure why.
When the buffer is computed I divide it by MAX_STREAM_BUFFERS since it will use that many buffers in rotation. This is a memory saving tactic since each stream could be using quite a few megs of ram otherwise. In this one case though, not doing it will make the audio play fine. After looking at that for a little bit last night I figured out that the static will happen when the buffer size equals the samples per sec of the WAVE file, in this case 11025. Simple increasing the value resulting from the divide by 1 fixes the static. I'm not totally sure why since being 1 less than the samples per sec works fine too. This is one that I probably don't want to know the answer to though.
Anyway, it is fixed now and will be going in CVS after I've had a little more time to wake up and get something to eat. This particular problem was specific to the OpenAL code and not a platform thing so Windows OAL builds would experience it as well.