[Scummvm-cvs-logs] CVS: scummvm/scumm/imuse_digi dimuse.cpp,1.98,1.99 dimuse_track.cpp,1.22,1.23

Pawel Kolodziejski aquadran at users.sourceforge.net
Fri May 28 13:48:00 CEST 2004


Update of /cvsroot/scummvm/scummvm/scumm/imuse_digi
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10699/scummvm/scumm/imuse_digi

Modified Files:
	dimuse.cpp dimuse_track.cpp 
Log Message:
apply mixer vol/pan at first time

Index: dimuse.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse_digi/dimuse.cpp,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -d -r1.98 -r1.99
--- dimuse.cpp	28 May 2004 14:42:49 -0000	1.98
+++ dimuse.cpp	28 May 2004 20:46:50 -0000	1.99
@@ -145,7 +145,7 @@
 			int	freq = _sound->getFreq(track->soundHandle);
 			track->stream2 = NULL;
 			track->stream = makeAppendableAudioStream(freq, track->mixerFlags, streamBufferSize);
-			_vm->_mixer->playInputStream(&track->handle, track->stream, false, track->vol / 1000, track->pan, -1);
+			_vm->_mixer->playInputStream(&track->handle, track->stream, false, track->mixerVol, track->mixerPan, -1);
 		}
 	}
 }
@@ -198,6 +198,9 @@
 			if (track->volGroupId == 3)
 				vol = (vol * _volMusic) / 128;
 
+			track->mixerVol = vol;
+			track->mixerPan = pan;
+
 			if (_vm->_mixer->isReady()) {
 				if (track->stream2) {
 					if (!track->started) {

Index: dimuse_track.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse_digi/dimuse_track.cpp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- dimuse_track.cpp	26 May 2004 17:03:31 -0000	1.22
+++ dimuse_track.cpp	28 May 2004 20:46:50 -0000	1.23
@@ -155,11 +155,24 @@
 				track->stream = NULL;
 				track->started = false;
 			} else {
+				int pan = (track->pan != 64) ? 2 * track->pan - 127 : 0;
+				int vol = track->vol / 1000;
+
+				if (track->volGroupId == 1)
+					vol = (vol * _volVoice) / 128;
+				if (track->volGroupId == 2)
+					vol = (vol * _volSfx) / 128;
+				if (track->volGroupId == 3)
+					vol = (vol * _volMusic) / 128;
+
+				track->mixerPan = pan;
+				track->mixerVol = vol;
+
 				// setup 1 second stream wrapped buffer
 				int32 streamBufferSize = track->iteration;
 				track->stream2 = NULL;
 				track->stream = makeAppendableAudioStream(freq, track->mixerFlags, streamBufferSize);
-				_vm->_mixer->playInputStream(&track->handle, track->stream, false, track->vol / 1000, track->pan, -1);
+				_vm->_mixer->playInputStream(&track->handle, track->stream, false, track->mixerVol, track->mixerPan, -1);
 				track->started = true;
 			}
 





More information about the Scummvm-git-logs mailing list