Because every UNIX is different, Wine can't guess where to find them. Please be sure to use only interfaces which support multiple streams.Įver missed the 'Ding' system sound and other standard Windows audio cues? Wine can play them if you tell it where to find PCM. However, if you configure Wine or another application to use your audio hardware directly (the 'hw:0' interface, for example), you may find that only a single audio stream will play, which can cause audio problems in many applications. On modern ALSA machines, the 'default' device can typically do both. It relies on your system to perform mixing of separate audio streams, as well as to provide resampling. Wine's audio systems require a lot from your system's audio libraries. Wine's MMDevAPI currently supports several backends: ALSA, PulseAudio, OSSv4, and CoreAudio on OS X.
All of our audio DLLs route through MMDevAPI. Wine's audio DLLs are implemented similarly. More information can be found on MSDN's User-Mode Audio Components page. Around the same time, the XAudio2 APIs were introduced as a replacement for dsound. For Windows Vista, Microsoft rewrote the legacy APIs to route their audio through the main audio system called MMDevAPI. WinMM and DSound can be considered 'legacy' APIs. There are a number of audio APIs in the Windows API, notably dsound.dll, mmdevapi.dll, winmm.dll, and xaudio2*.dll. In Windows Vista, Microsoft rewrote most of their audio systems.