[alsa-devel] snd-hda-intel+dmix: Disabling power save doesn't work

Adam Nielsen a.nielsen at shikadi.net
Mon May 7 04:19:37 CEST 2012


Hi all,

I'm trying to hunt down a bug in either dmix or the snd-hda-intel module and 
I'm hoping someone can give me some pointers.

When I am playing audio and I pause playback, the codec goes into power save 
and stops generating a SPDIF signal.  My amplifier then displays a 'signal 
lost' message.  This is quite annoying as it takes a few seconds to sync when 
the signal returns (during which time I can't hear the audio being played), so 
I set "powersave=0" to disable this behaviour.

This works as expected when stopping playback, but if I only *pause* playback 
then the signal drops almost exactly one second later, no matter what 
"powersave" is set to.  So of course then resuming playback means I lose a 
couple of seconds of audio while the amplifier re-syncs to the SPDIF signal.

Setting powersave to other values only affects the time before going into 
powersave mode after playback has stopped.  It has no effect on whether power 
saving is activated while paused.

The problem happens with any audio program (e.g. mplayer and xmms2.)  Setting 
"powersave=0" means the SPDIF signal keeps going when stopping playback, but 
it still drops after one second when pausing playback.

It doesn't happen if I use hw:0,1 as the output device (the SPDIF signal keeps 
going, even when paused) but as soon as I change the output device to dmix 
then the signal drops whenever the audio is paused.

Is there any way to stop this behaviour and make dmix honour the module setting?

Thanks,
Adam.



More information about the Alsa-devel mailing list