http://bugs.winehq.org/show_bug.cgi?id=28413
--- Comment #38 from Jörg Höhle hoehle@users.sourceforge.net 2013-01-04 05:20:22 CST ---
That's nearly a full tenth of a second between invoking and returning from PlaySound.
Please investigate further whether it's PlaySound, winmm/wave or mmdevapi that causes such delays. PlaySound uses waveOutReset+Wait so it already does its best at trying to abort a currently playing sound. As the bug appears to be limited to *BSD and they all use wineoss, it's presumably long-lasting calls into OSS that leak from wineoss to mmdevapi to winmm:wave* to PlaySound.
A tenth of a second doesn' look like much to me, but Lemmix shows that native behaves differently. We need some timing tests to find out whether the winmm:wave* functions return very fast, so PlaySound does it too or whether wave* may introduce delays that PlaySound hides.