Working on an app I am seeing several strange effects, and this is one of them.
It can be demonstrated with the pcm.c example program, and I have attempted to attach a small shot of Audacity capturing the effect.
After writing to the pcm with snd_pcm_writei() a certain amount of data (I have pcm.c doing 2 periods) the value captured from the soundcard remains at the last value thereafter; clearly this card doesn't have DC elimination or this would not be seen.
The sound card is ice1712 (DMX6fire); I had always noticed the PCM meters in envy24control often stayed high if something like XMMS was stopped or paused during play, but thought it a metering fault. Now it appears to be actual pcm value that 'gets stuck'.
Close examination with Audacity shows it is in fact the last-but-one value that is sustained.
Is this expected behaviour, configuration fault, driver bug or other problem? I had expected that after the block of data had been written out as audio the signal would return to zero straightaway. Can anyone give me any clues?
Alan