[alsa-devel] snd_pcm_avail_update() returning large values

Raymond Yau superquad.vortex2 at gmail.com
Fri May 6 05:05:04 CEST 2011


2011/5/6 Baek Chang <baeksan at ccrma.stanford.edu>

> Hi,
>
> Occasionally, when using pulseaudio I see the following message:
>
> snd_pcm_avail_update() returned a value that is exceptionally large.
>
> This seems to be an issue with the ALSA driver itself.  My question is how
> does snd_pcm_avail_update(), get updated? It uses hw buffer positions
> correct?  Is there an example driver that implements snd_pcm_avail_update()
> correctly and updates buffer positions correctly?
>
> Thanks
> Baek
>


You have to provide a test case which can reproduce the problem

(e.g.http://thread.gmane.org/gmane.linux.alsa.devel/78521 )


To debug,  you need to enable DEBUG_TIMING in
pulseaudio/src/modules/alsa/alsa-sink.c and
pulseaudio/src/modules/alsa/alsa-source.c

and follow
http://colin.guthr.ie/2010/09/compiling-and-running-pulseaudio-from-git/


The free-glitch mode is tailor made for snd-hda-intel , so it should be the
example driver


aplay can use minimum period size without any xrun on my snd-hda-intel

aplay -Dhw:CARD=Intel  -v --period-size=32 any.wav


More information about the Alsa-devel mailing list