Fix sound noise regression in CD32 version of Simon the Sorcerer 1.

svn-id: r36236
This commit is contained in:
Travis Howell 2009-02-07 05:05:14 +00:00
parent 8c84ec82fc
commit 4131d3d07f
5 changed files with 5 additions and 9 deletions

View File

@ -424,7 +424,7 @@ void IgorEngine::playSound(int num, int type) {
return;
}
_sndFile.seek(soundOffset);
Audio::AudioStream *stream = Audio::makeVOCStream(_sndFile);
Audio::AudioStream *stream = Audio::makeVOCStream(_sndFile, Audio::Mixer::FLAG_UNSIGNED);
if (stream) {
_mixer->playInputStream(soundType, soundHandle, stream);
}

View File

@ -98,7 +98,7 @@ int32 Sound::voicePlay(const char *file, uint8 volume, bool isSfx) {
return 0;
Common::MemoryReadStream vocStream(fileData, fileSize);
audioStream = Audio::makeVOCStream(vocStream);
audioStream = Audio::makeVOCStream(vocStream, Audio::Mixer::FLAG_UNSIGNED);
delete[] fileData;
fileSize = 0;

View File

@ -666,7 +666,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle
#endif
break;
default:
input = Audio::makeVOCStream(*_sfxFile);
input = Audio::makeVOCStream(*_sfxFile, Audio::Mixer::FLAG_UNSIGNED);
break;
}

View File

@ -589,7 +589,7 @@ void ToucheEngine::res_loadSound(int priority, int num) {
uint32 size;
const uint32 offs = res_getDataOffset(kResourceTypeSound, num, &size);
_fData.seek(offs);
Audio::AudioStream *stream = Audio::makeVOCStream(_fData);
Audio::AudioStream *stream = Audio::makeVOCStream(_fData, Audio::Mixer::FLAG_UNSIGNED);
if (stream) {
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_sfxHandle, stream);
}
@ -647,7 +647,7 @@ void ToucheEngine::res_loadSpeechSegment(int num) {
return;
}
_fSpeech[i].seek(offs);
stream = Audio::makeVOCStream(_fSpeech[i]);
stream = Audio::makeVOCStream(_fSpeech[i], Audio::Mixer::FLAG_UNSIGNED);
} else {
if (num >= 750) {
num -= 750;

View File

@ -164,10 +164,6 @@ AudioStream *makeVOCStream(Common::ReadStream &stream, byte flags, uint loopStar
if (!data)
return 0;
// Default to unsigned sound data, if not flags set
if (!flags)
flags |= Audio::Mixer::FLAG_UNSIGNED;
return makeLinearInputStream(data, size, rate, flags | Audio::Mixer::FLAG_AUTOFREE, loopStart, loopEnd);
}