From f9a459d70e0a0de620ac931716481a938a725733 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sun, 20 Mar 2011 23:45:52 +0100 Subject: ENGINES: Make Engine::syncSoundSettings use the Mixer's mute flag directly. This fixes an annoying behavior in the Sword2 option's dialog, which set all sound type volumes to 0, in case it was opened when the user used the global mute setting. --- engines/engine.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'engines') diff --git a/engines/engine.cpp b/engines/engine.cpp index 0e5e58bc72..8145a550ab 100644 --- a/engines/engine.cpp +++ b/engines/engine.cpp @@ -439,10 +439,14 @@ void Engine::syncSoundSettings() { if (ConfMan.hasKey("mute")) mute = ConfMan.getBool("mute"); - _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, (mute ? 0 : Audio::Mixer::kMaxMixerVolume)); - _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, (mute ? 0 : soundVolumeMusic)); - _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, (mute ? 0 : soundVolumeSFX)); - _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, (mute ? 0 : soundVolumeSpeech)); + _mixer->setMuteForSoundType(Audio::Mixer::kPlainSoundType, mute); + _mixer->setMuteForSoundType(Audio::Mixer::kMusicSoundType, mute); + _mixer->setMuteForSoundType(Audio::Mixer::kSFXSoundType, mute); + _mixer->setMuteForSoundType(Audio::Mixer::kSpeechSoundType, mute); + _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, Audio::Mixer::kMaxMixerVolume); + _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic); + _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, soundVolumeSFX); + _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, soundVolumeSpeech); } void Engine::flipMute() { -- cgit v1.2.3 From 507dd88f9c43a8a038da519bdfe2e9b62456e7fe Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sun, 20 Mar 2011 23:58:08 +0100 Subject: TINSEL: Clean up code a bit, since we now handle digital audio muting differently. --- engines/tinsel/sound.cpp | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'engines') diff --git a/engines/tinsel/sound.cpp b/engines/tinsel/sound.cpp index 1fcdb4dcf9..3fef59edef 100644 --- a/engines/tinsel/sound.cpp +++ b/engines/tinsel/sound.cpp @@ -131,13 +131,9 @@ bool SoundManager::playSample(int id, Audio::Mixer::SoundType type, Audio::Sound error(FILE_IS_CORRUPT, _vm->getSampleFile(sampleLanguage)); // FIXME: Should set this in a different place ;) - bool mute = false; - if (ConfMan.hasKey("mute")) - mute = ConfMan.getBool("mute"); - - _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, mute ? 0 : _vm->_config->_soundVolume); + _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, _vm->_config->_soundVolume); //_vm->_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic); - _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, mute ? 0 : _vm->_config->_voiceVolume); + _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, _vm->_config->_voiceVolume); Audio::AudioStream *sampleStream = 0; @@ -325,13 +321,9 @@ bool SoundManager::playSample(int id, int sub, bool bLooped, int x, int y, int p } // FIXME: Should set this in a different place ;) - bool mute = false; - if (ConfMan.hasKey("mute")) - mute = ConfMan.getBool("mute"); - - _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, mute ? 0 : _vm->_config->_soundVolume); + _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, _vm->_config->_soundVolume); //_vm->_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic); - _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, mute ? 0 : _vm->_config->_voiceVolume); + _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, _vm->_config->_voiceVolume); curChan->sampleNum = id; curChan->subSample = sub; -- cgit v1.2.3 From f61eff4404751ad4bf53e8295ea4d5b77847bbed Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Mon, 21 Mar 2011 00:30:22 +0100 Subject: DRACI: Adapt to new muting style. --- engines/draci/sound.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'engines') diff --git a/engines/draci/sound.cpp b/engines/draci/sound.cpp index c8646fff67..c1ec235246 100644 --- a/engines/draci/sound.cpp +++ b/engines/draci/sound.cpp @@ -417,15 +417,16 @@ void Sound::setVolume() { } else { _muteSound = _muteVoice = true; } + if (ConfMan.getBool("mute")) { _muteSound = _muteVoice = true; } - const int soundVolume = _muteSound ? 0: ConfMan.getInt("sfx_volume"); - const int speechVolume = _muteVoice ? 0 : ConfMan.getInt("speech_volume"); + _mixer->setMuteForSoundType(Audio::Mixer::kSFXSoundType, _muteSound); + _mixer->setMuteForSoundType(Audio::Mixer::kSpeechSoundType, _muteVoice); - _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, soundVolume); - _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, speechVolume); + _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, ConfMan.getInt("sfx_volume")); + _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, ConfMan.getInt("speech_volume")); } } // End of namespace Draci -- cgit v1.2.3 From 6b0ccbb095917d5f98722b26bef07d4a0816bb3b Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sat, 16 Apr 2011 18:20:37 +0200 Subject: AUDIO: Renamed mute related functions in Mixer. This renames setMuteForSoundType to muteSoundType and getMuteForSoundType to isSoundTypeMuted. --- engines/draci/sound.cpp | 4 ++-- engines/engine.cpp | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'engines') diff --git a/engines/draci/sound.cpp b/engines/draci/sound.cpp index c1ec235246..0df19794f7 100644 --- a/engines/draci/sound.cpp +++ b/engines/draci/sound.cpp @@ -422,8 +422,8 @@ void Sound::setVolume() { _muteSound = _muteVoice = true; } - _mixer->setMuteForSoundType(Audio::Mixer::kSFXSoundType, _muteSound); - _mixer->setMuteForSoundType(Audio::Mixer::kSpeechSoundType, _muteVoice); + _mixer->muteSoundType(Audio::Mixer::kSFXSoundType, _muteSound); + _mixer->muteSoundType(Audio::Mixer::kSpeechSoundType, _muteVoice); _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, ConfMan.getInt("sfx_volume")); _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, ConfMan.getInt("speech_volume")); diff --git a/engines/engine.cpp b/engines/engine.cpp index 8145a550ab..71f9b68f44 100644 --- a/engines/engine.cpp +++ b/engines/engine.cpp @@ -439,10 +439,10 @@ void Engine::syncSoundSettings() { if (ConfMan.hasKey("mute")) mute = ConfMan.getBool("mute"); - _mixer->setMuteForSoundType(Audio::Mixer::kPlainSoundType, mute); - _mixer->setMuteForSoundType(Audio::Mixer::kMusicSoundType, mute); - _mixer->setMuteForSoundType(Audio::Mixer::kSFXSoundType, mute); - _mixer->setMuteForSoundType(Audio::Mixer::kSpeechSoundType, mute); + _mixer->muteSoundType(Audio::Mixer::kPlainSoundType, mute); + _mixer->muteSoundType(Audio::Mixer::kMusicSoundType, mute); + _mixer->muteSoundType(Audio::Mixer::kSFXSoundType, mute); + _mixer->muteSoundType(Audio::Mixer::kSpeechSoundType, mute); _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, Audio::Mixer::kMaxMixerVolume); _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic); _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, soundVolumeSFX); -- cgit v1.2.3