[alsa-devel] Why is ALSA sending STOP/START commands to my driver during MP3 playback?
![](https://secure.gravatar.com/avatar/21c96b641c1fea341bf8c485ee77eaf9.jpg?s=120&d=mm&r=g)
I'm developing an ASoC driver, and when I play an MP3 with mpg123, my driver's trigger() function is called with the SNDRV_PCM_TRIGGER_STOP command and then is immediately called again with SNDRV_PCM_TRIGGER_START.
Can someone tell me why ALSA would do this?
This only happens when playing an MP3. When I use aplay to play a regular Wave file, I don't see this behavior.
My driver does not have the SNDRV_PCM_INFO_PAUSE bit set, because I haven't gotten around to testing that capability. I suspect that if I did have that bit set, I would be getting SNDRV_PCM_TRIGGER_PAUSE_PUSH and SNDRV_PCM_TRIGGER_PAUSE_RELEASE calls instead.
![](https://secure.gravatar.com/avatar/5b19e9d0e834ea10ef75803718ad564b.jpg?s=120&d=mm&r=g)
At Fri, 07 Sep 2007 10:09:38 -0500, Timur Tabi wrote:
I'm developing an ASoC driver, and when I play an MP3 with mpg123, my driver's trigger() function is called with the SNDRV_PCM_TRIGGER_STOP command and then is immediately called again with SNDRV_PCM_TRIGGER_START.
Can someone tell me why ALSA would do this?
I guess OSS-emulation code does this (automatic recovery from XRUN).
Takashi
participants (2)
-
Takashi Iwai
-
Timur Tabi