Longhorn audio system design info is on msdn.
Decent hardware will support multiple buffer hardware acceleration so multiple applications will get their own hardware buffers. Cheap win sound card hardware will not and suffer. 2k and xp encourage cheap hardware which is unfortunate but longhorn will take full advantage of well designed hardware so hopefully the cheap hardware approach will be discouraged in the future.
Mike Hearn wrote:
Oops, didn't see this (and gmane doesn't convert attachments, grr)
On real windows, kmixer causes all sorts of problems with high latencies and sample rate artifacts. That's why the next generation of windows is going back to a 98 type model and bypassing kmixer for hardware acceleration when the hardware supports it.
Argh, this is confusing. How do you know what the next generation of Windows (longhorn?!) will do in this regard, has it been published anywhere?
Also, what is our conversion code like compared to alsalibs? I was told it probably wasn't as good, but I don't think I've ever heard it - until I changed the default device to "default" -> "plughw:0,0" WinAMP with WinMM wouldn't play audio at all!
Finally, if we use the Win98 direct access model for Wine, what happens when people want to use emulated apps with other apps via ALSA dmix - we're bypassing the IPC mixing system so we will either block (read: hang) other programs, or Wine itself will hang waiting for the sound device to become available. Neither of these results are really acceptable, to be frank (is there a way to figure out if the device is in use without hanging?)