ok, first my setup:
a compaq presario 305 (laptop) using the maestro sound driver
(maestro-20000128) and a 2.2.14 kernel.
i can't figure out how to reproduce this, but it frequently happens when
starting and stopping something like xmms, or other sound apps. after that
the sound is tinny to a point that's almost painful (and i'm not some
psycho audiophile). i discovered to day that doing this will reset it:
***pause about 3 seconds***
don't know if you can fix this, and i honestly don't know what to do to
give you more info to fix it. maybe it's the maestro driver, maybe it's
this laptop. but the fact that starting and stopping esd seems like there
might be something esd is doing when the audio stream starts and stops?
There are plenty of weird bug reports like this that are pointing at race
conditions in the hardware around updating the APUs in the maestro driver.
the APUS are a bank of logical voices that are mixed into the output. They're
controlled by a bank of memory.. there appears to be a race between the hardware
accessing this memory and the driver altering it.
At least, thats my guess. No docs on the maestro, remember. This would explain
lots of completely odd sound artifacts people are getting that could be
explained by improper apu settings that seem to crop up under heavy apu
modification. (lots of ioctls setting the speed, lots of start/stop traffic,
but I don't have maestro hardware anymore.