[alsa-devel] bug in alsa-lib/snd_pcm_plugin_delay for capture?

pl bossart bossart.nospam at gmail.com
Tue Nov 23 15:55:07 CET 2010

> After rethinking, I believe that the right fix should be to add the
> 'snd_pcm_mmap_capture_avail(pcm)' to the sd variable - delay(slave) - for
> the capture direction. You should not bother with avail_update or the slave
> avail values. The avail_update() capture loop just copied samples from the
> producer (slave) to the consumer (pcm). It means that the avail becomes
> lower for the producer (slave) and is increased for the consumer (pcm). The
> delay(slave) already contains the avail(slave) value.
> So, the result should be 'delay(slave) + mmap_capture_avail(pcm)'.

The attached patch implements your recoomendation and makes error
messages go away in PulseAudio.
It'd good to know if it improves the perfomance of echo cancellation.
Wim, can you try it out?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-pcm_plugin-fix-delay.patch
Type: application/octet-stream
Size: 1216 bytes
Desc: not available
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20101123/5e443adb/attachment.dll 

More information about the Alsa-devel mailing list