[Scummvm-cvs-logs] SF.net SVN: scummvm:[46555] scummvm/trunk/engines/sci/sfx
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Fri Dec 25 16:24:36 CET 2009
Revision: 46555
http://scummvm.svn.sourceforge.net/scummvm/?rev=46555&view=rev
Author: thebluegr
Date: 2009-12-25 15:24:35 +0000 (Fri, 25 Dec 2009)
Log Message:
-----------
Adjusted volume clipping
Modified Paths:
--------------
scummvm/trunk/engines/sci/sfx/music.cpp
scummvm/trunk/engines/sci/sfx/soundcmd.cpp
Modified: scummvm/trunk/engines/sci/sfx/music.cpp
===================================================================
--- scummvm/trunk/engines/sci/sfx/music.cpp 2009-12-25 14:02:28 UTC (rev 46554)
+++ scummvm/trunk/engines/sci/sfx/music.cpp 2009-12-25 15:24:35 UTC (rev 46555)
@@ -472,8 +472,7 @@
//---------------------------------------------
void SciMusic::soundSetMasterVolume(uint16 vol) {
vol = vol & 0xF; // 0..15
- vol = (vol * Audio::Mixer::kMaxMixerVolume / 0xF) & 0xFF; // 0...255
- // TODO:balance volume to prevent music to be too loud
+ vol = vol * Audio::Mixer::kMaxMixerVolume / 0xF;
_pMixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, vol);
_pMixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, vol);
_pMixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, vol);
Modified: scummvm/trunk/engines/sci/sfx/soundcmd.cpp
===================================================================
--- scummvm/trunk/engines/sci/sfx/soundcmd.cpp 2009-12-25 14:02:28 UTC (rev 46554)
+++ scummvm/trunk/engines/sci/sfx/soundcmd.cpp 2009-12-25 15:24:35 UTC (rev 46555)
@@ -287,7 +287,7 @@
newSound->soundObj = obj;
newSound->loop = GET_SEL32V(_segMan, obj, loop) == 0xFFFF ? 1 : 0;
newSound->prio = GET_SEL32V(_segMan, obj, pri) & 0xFF;
- newSound->volume = GET_SEL32V(_segMan, obj, vol) & 0xFF;
+ newSound->volume = CLIP<int>(GET_SEL32V(_segMan, obj, vol), 0, Audio::Mixer::kMaxChannelVolume);
newSound->dataInc = 0;
newSound->pStreamAud = 0;
newSound->pMidiParser = 0;
@@ -659,7 +659,7 @@
}
_music->_playList[slot]->loop = (GET_SEL32V(_segMan, obj, loop) == 0xFFFF ? 1 : 0);
- uint32 objVol = GET_SEL32V(_segMan, obj, vol) & 0xFF;
+ uint32 objVol = CLIP<int>(GET_SEL32V(_segMan, obj, vol), 0, 255);
if (objVol != _music->_playList[slot]->volume)
_music->soundSetVolume(_music->_playList[slot], objVol);
uint32 objPrio = GET_SEL32V(_segMan, obj, vol);
@@ -821,7 +821,7 @@
return;
}
- value = value & 0xFF; // 0...255
+ value = CLIP<int>(value, 0, Audio::Mixer::kMaxChannelVolume);
if (_music->_playList[slot]->volume != value) {
_music->_playList[slot]->volume = value;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list