aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorMax Horn2010-01-19 11:19:53 +0000
committerMax Horn2010-01-19 11:19:53 +0000
commitf0a0ed8f9e01d3943f635b92af6f71ca83814f13 (patch)
tree5ac9f7f2f69bc87799a4818b6683556ccfbfb855 /engines/scumm
parent14a22567059ce6e456b213aae3f6052b0ce6ff7a (diff)
downloadscummvm-rg350-f0a0ed8f9e01d3943f635b92af6f71ca83814f13.tar.gz
scummvm-rg350-f0a0ed8f9e01d3943f635b92af6f71ca83814f13.tar.bz2
scummvm-rg350-f0a0ed8f9e01d3943f635b92af6f71ca83814f13.zip
Get rid of Mixer::FLAG_REVERSE_STEREO; also change SCUMM's iMuse Digital emulation to reverse stereo again, as it once seems to have been intended
svn-id: r47374
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/imuse_digi/dimuse.cpp7
-rw-r--r--engines/scumm/imuse_digi/dimuse_track.cpp9
2 files changed, 9 insertions, 7 deletions
diff --git a/engines/scumm/imuse_digi/dimuse.cpp b/engines/scumm/imuse_digi/dimuse.cpp
index cf5cc99579..43c72bc7ad 100644
--- a/engines/scumm/imuse_digi/dimuse.cpp
+++ b/engines/scumm/imuse_digi/dimuse.cpp
@@ -85,8 +85,6 @@ int32 IMuseDigital::makeMixerFlags(int32 flags) {
mixerFlags |= Audio::Mixer::FLAG_LITTLE_ENDIAN;
if (flags & kFlagStereo)
mixerFlags |= Audio::Mixer::FLAG_STEREO;
- if (flags & kFlagReverseStereo)
- mixerFlags |= Audio::Mixer::FLAG_REVERSE_STEREO;
return mixerFlags;
}
@@ -202,9 +200,10 @@ void IMuseDigital::saveOrLoad(Serializer *ser) {
track->mixerFlags |= kFlagLittleEndian;
#endif
- track->stream = Audio::makeQueuingAudioStream(freq, track->mixerFlags & kFlagStereo);
+ track->stream = Audio::makeQueuingAudioStream(freq, (track->mixerFlags & kFlagStereo) != 0);
- _mixer->playInputStream(track->getType(), &track->mixChanHandle, track->stream, -1, track->getVol(), track->getPan());
+ _mixer->playInputStream(track->getType(), &track->mixChanHandle, track->stream, -1, track->getVol(), track->getPan(),
+ DisposeAfterUse::YES, false, (track->mixerFlags & kFlagReverseStereo) != 0);
_mixer->pauseHandle(track->mixChanHandle, true);
}
}
diff --git a/engines/scumm/imuse_digi/dimuse_track.cpp b/engines/scumm/imuse_digi/dimuse_track.cpp
index 58ae48d330..dd68181cc9 100644
--- a/engines/scumm/imuse_digi/dimuse_track.cpp
+++ b/engines/scumm/imuse_digi/dimuse_track.cpp
@@ -112,7 +112,8 @@ void IMuseDigital::startSound(int soundId, const char *soundName, int soundType,
track->souStreamUsed = (input != 0);
if (track->souStreamUsed) {
- _mixer->playInputStream(track->getType(), &track->mixChanHandle, input, -1, track->getVol(), track->getPan());
+ _mixer->playInputStream(track->getType(), &track->mixChanHandle, input, -1, track->getVol(), track->getPan(),
+ DisposeAfterUse::YES, false, (track->mixerFlags & kFlagReverseStereo) != 0);
} else {
strcpy(track->soundName, soundName);
track->soundDesc = _sound->openSound(soundId, soundName, soundType, volGroupId, -1);
@@ -173,7 +174,8 @@ void IMuseDigital::startSound(int soundId, const char *soundName, int soundType,
}
track->stream = Audio::makeQueuingAudioStream(freq, track->mixerFlags & kFlagStereo);
- _mixer->playInputStream(track->getType(), &track->mixChanHandle, track->stream, -1, track->getVol(), track->getPan());
+ _mixer->playInputStream(track->getType(), &track->mixChanHandle, track->stream, -1, track->getVol(), track->getPan(),
+ DisposeAfterUse::YES, false, (track->mixerFlags & kFlagReverseStereo) != 0);
}
track->used = true;
@@ -373,7 +375,8 @@ Track *IMuseDigital::cloneToFadeOutTrack(Track *track, int fadeDelay) {
// Create an appendable output buffer
fadeTrack->stream = Audio::makeQueuingAudioStream(_sound->getFreq(fadeTrack->soundDesc), track->mixerFlags & kFlagStereo);
- _mixer->playInputStream(track->getType(), &fadeTrack->mixChanHandle, fadeTrack->stream, -1, fadeTrack->getVol(), fadeTrack->getPan());
+ _mixer->playInputStream(track->getType(), &fadeTrack->mixChanHandle, fadeTrack->stream, -1, fadeTrack->getVol(), fadeTrack->getPan(),
+ DisposeAfterUse::YES, false, (track->mixerFlags & kFlagReverseStereo) != 0);
fadeTrack->used = true;
debug(5, "cloneToFadeOutTrack() - end of func, soundId %d, fade soundId %d", track->soundId, fadeTrack->soundId);