Hi Richard Richard Drummond wrote: > On Saturday 25 March 2006 00:10, Richard Drummond wrote: > >> Done some digging, reading and experimenting, and the problem seems to be >> ALSA's dmix plugin. If you specify the "default" ALSA device with recent >> ALSA versions, you automatically get dmix thrown on top and this adds its >> own substantial minimum latency. I don't know if there's a way to reduce >> that. The ALSA documentation isn't what you might call light reading. >> > > You can edit your /usr/share/alsa/pcm/dmix.conf file and reduce the number of > periods in a buffer (dmix uses a fixed number of periods in a buffer, which > fixes the buffer size and so the latency). It defaults to 16 here. Knocking > this down to 4, for example, reduces the latency tolerably for me. > > It looks like this problem will be fixed in libasound 1.0.11. From the > Changelog for 1.0.11rc4: > > - Summary: dmix - Allow more flexible buffer sizes > With the patch, dmix allows apps to use more flexible buffer sizes. > The max buffer size is unlimited, and the minimal buffer size is > (period size * 2). The buffer size is aligned to period size. > The period size is still bound to the period size of slave PCM. > To back to the old behavior (the fixed buffer size), you can set > defaults.pcm.dmix_variable_buffer false > in your configuration. > > Hope all this helps. ;-) > > Cheersm > Rich > > > Thanks for looking into this for us. I'll maybe try and check it out to confirm over the next week or so, as the nvidia binary driver I use doesn't work with 2.6.16 (well, it didn't with the release candidate ones I tried). Might be time to give alsa another spin. Unfortunately on Gentoo here it involves a serious amount of arseing about to make the transition. Cheers, Jonathan