Maarten Lankhorst : dsound: Unofficially support 5.1 sound.

Alexandre Julliard julliard at winehq.org
Tue Jun 8 10:08:23 CDT 2010


Module: wine
Branch: master
Commit: 2d5c4944c13900b5d16b306de94a2f49371bd0d1
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2d5c4944c13900b5d16b306de94a2f49371bd0d1

Author: Maarten Lankhorst <m.b.lankhorst at gmail.com>
Date:   Tue Jun  8 00:28:56 2010 +0200

dsound: Unofficially support 5.1 sound.

---

 dlls/dsound/mixer.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/dlls/dsound/mixer.c b/dlls/dsound/mixer.c
index 698e586..185df6e 100644
--- a/dlls/dsound/mixer.c
+++ b/dlls/dsound/mixer.c
@@ -277,7 +277,8 @@ static inline void cp_fields(const IDirectSoundBufferImpl *dsb, const BYTE *ibuf
     DirectSoundDevice *device = dsb->device;
     INT istep = dsb->pwfx->wBitsPerSample / 8, ostep = device->pwfx->wBitsPerSample / 8;
 
-    if (device->pwfx->nChannels == dsb->pwfx->nChannels) {
+    if (device->pwfx->nChannels == dsb->pwfx->nChannels ||
+        (device->pwfx->nChannels == 2 && dsb->pwfx->nChannels == 6)) {
         dsb->convert(ibuf, obuf, istride, ostride, count, freqAcc, adj);
         if (device->pwfx->nChannels == 2)
             dsb->convert(ibuf + istep, obuf + ostep, istride, ostride, count, freqAcc, adj);




More information about the wine-cvs mailing list