http://bugs.winehq.org/show_bug.cgi?id=27901
Jörg Höhle hoehle@users.sourceforge.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hoehle@users.sourceforge.ne | |t
--- Comment #7 from Jörg Höhle hoehle@users.sourceforge.net 2011-09-23 16:34:39 CDT --- Bryan, this report is a bit confusing. It looks like the original crash is gone and the focus since shifted to winmm:wave tests failing. Please change the subject accordingly.
I'd tend to confirm the test failure wave.c:794: Test failed: (00) WHDR_DONE WHDR_PREPARED expected, got WHDR_INQUEUE WHDR_PREPARED
Wine's audio is sadly still somewhat fragile and too much dependent on settings that happen to work more or less well together, but beware of changing them in isolation (e.g. 100ms winmm buffer duration w.r.t. ALSA buffer size and timer callback rate, feeding silence w.r.t. underruns, using IAC_Stop w.r.t. GetPosition, using dmix or PulseAudio or raw hw:0). This is no good and we're slowly working on that... Don't hold your breath.
Feel free to submit test results to test.winehq.org
Meanwhile, I bet you get random hangs on the winmm:mci tests. I've one machine which does that in Ubuntu Intrepid with dmix. No failure with Pulseaudio, yet the bugs are all Wine's. In rare cases, the tests pass!
As you already found out, waveOutRestart is involved, beside snd_pcm_drop and computations of GetPosition, with fluctuations depending on the time the periodic timers invoke the callbacks w.r.t. activity in other threads and period size vs. buffer sizes. Because PulseAudio, dmix and hw:0 use vastly different buffer sizes, they cause different "effects" in Wine.