[alsa-devel] Any OSS changes from kernel 2.6.21 to 2.6.23? Something broke.
timur at freescale.com
Thu Nov 8 20:33:17 CET 2007
Clemens Ladisch wrote:
> Timur Tabi wrote:
>> It turns out that ALSA (when using mplayer to play a divx video file via OSS
>> emulation) is rapidly sending back-to-back SNDRV_PCM_TRIGGER_STOP and
>> SNDRV_PCM_TRIGGER_START commands. Why would it do that?
> To recover from underruns.
I've added some function traces to ALSA, and apparently ALSA is telling the
driver to STOP when the driver calls snd_pcm_period_elapsed(). Here's a log:
snd_pcm_update_hw_ptr_interrupt:232 <- last line of this function
PERIOD <- printk in the driver's ISR
STOP 279 <- command to stop after sub-buffer #279, which is at the end of the period
Unfortunately, very little of the code in sound/core/pcm???.c is documented, so
I'm having a hard time figuring out what's going on. Why is ALSA telling the
driver to stop during a period interrupt?
Linux kernel developer at Freescale
More information about the Alsa-devel