On Wed, 14 Jul 2010, David Henningsson wrote: > 2010-07-14 17:25, Jaroslav Kysela skrev: >> On Wed, 14 Jul 2010, David Henningsson wrote: >> >>> 2010-07-14 13:13, Raymond Yau skrev: >>> >>>> localhost pulseaudio[24553]: alsa-util.c: appl_ptr : 735801008 >>>> localhost pulseaudio[24553]: alsa-util.c: hw_ptr : 735846184 >>>> >>>> This is underrun as you can see appl_ptr is behing hw_ptr >>> >>> Ehm, isn't that a ring buffer? I e, there is nothing wrong with appl_ptr >>> being less than hw_ptr. >> >> For playback, if appl_ptr is less than hw_ptr, it's underrun situation >> (application didn't feed samples in time to the driver's ring buffer). >> >> Note that pointers in ALSA are in range 0..boundary not >> 0..ring_buffer_size (boundary is near LONG_MAX value) - it's design to >> detect such situations (underrun, overrun). > > Okay, thanks for the clarification. But LONG_MAX (as in 2^31) would > still wrap around every thirteen hours (at 44100 Hz), so are we having > bugs, such as e g failure to detect underruns, at those occasions? >From values above, it looks like a standard underrun (samples didn't arrive in time to the ring buffer). Just check the real system time between I/O operations and you'll see if it's issue in the ALSA driver or a task scheduling problem. Jaroslav ----- Jaroslav Kysela <perex@xxxxxxxx> Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel