[PATCH] winealsa.drv: Default to Stereo instead of 5.1 Surround

Andrew Eikum aeikum at codeweavers.com
Mon May 18 11:38:01 CDT 2015


Some popular ALSA plugins claim support for a large number of channels
because they have the capability to mix that down to the actual hardware
configuration.

Instead of defaulting to 5.1 Surround sound for these plugins, let's
fall back on the much more common Stereo configuration.  Users with
actual 5.1 Surround setups can tell us about it in winecfg.
---
 dlls/winealsa.drv/mmdevdrv.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/winealsa.drv/mmdevdrv.c b/dlls/winealsa.drv/mmdevdrv.c
index 90894b6..14eac39 100644
--- a/dlls/winealsa.drv/mmdevdrv.c
+++ b/dlls/winealsa.drv/mmdevdrv.c
@@ -1828,7 +1828,7 @@ static HRESULT WINAPI AudioClient_GetMixFormat(IAudioClient *iface,
     }
 
     if(max_channels > 6)
-        fmt->Format.nChannels = 6;
+        fmt->Format.nChannels = 2;
     else
         fmt->Format.nChannels = max_channels;
 
@@ -4068,7 +4068,9 @@ HRESULT WINAPI AUDDRV_GetPropValue(GUID *guid, const PROPERTYKEY *prop, PROPVARI
 
         out->vt = VT_UI4;
 
-        if (num_speakers >= 6)
+        if (num_speakers > 6)
+            out->u.ulVal = KSAUDIO_SPEAKER_STEREO;
+        else if (num_speakers == 6)
             out->u.ulVal = KSAUDIO_SPEAKER_5POINT1;
         else if (num_speakers >= 4)
             out->u.ulVal = KSAUDIO_SPEAKER_QUAD;
-- 
2.4.1




More information about the wine-patches mailing list