[alsa-devel] Disabling buffer fill level preprocessing by ALSA
James at superbug.co.uk
Mon Jan 7 19:55:23 CET 2008
Lennart Poettering wrote:
> In PulseAudio I want to schedule on my own when I need to write audio
> data into the device and when not. To achieve that I want to be
> notified via poll() whenever a period boundary is passed (i.e. when an
> IRQ happens), but only then. That's different from the usual mode
> where you are notified via poll() whether there is space in the
> playback buffer that needs to be filled up.
> On OSS the mmap() mode enables a mode like I described above. After
> enabling mmap() the application can decide by itself what it considers
> full and what empty in the dma buffer, and use GETOPTR to query the
> playback position. poll() on the OSS fd will directly reflect the
> sound card IRQs and is not influenced if you ever wrote data to device
> or not.
> I assume that I can enable a mode like that with one of the SW
> params. But quite frankly the docs for it are not enlighening at all.
What would you want to do that for? Surely you just want to be told "I
need X samples now please", and that is what the current alsa
poll/callback method does.
More information about the Alsa-devel