From f189cc39fce6a17892b52aa10ede02bb11679f67 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Sat, 23 Jan 2010 13:34:59 +0000 Subject: Get rid of FLAG_LOOP svn-id: r47473 --- engines/scumm/player_mod.cpp | 2 +- engines/scumm/sound.cpp | 16 +++++----------- engines/sky/sound.cpp | 6 +----- sound/audiostream.cpp | 2 +- sound/raw.cpp | 2 +- sound/raw.h | 5 +---- 6 files changed, 10 insertions(+), 23 deletions(-) diff --git a/engines/scumm/player_mod.cpp b/engines/scumm/player_mod.cpp index 7410fff4e5..bbbd87fd2a 100644 --- a/engines/scumm/player_mod.cpp +++ b/engines/scumm/player_mod.cpp @@ -95,7 +95,7 @@ void Player_MOD::startChannel(int id, void *data, int size, int rate, uint8 vol, _channels[i].pan = pan; _channels[i].freq = rate; _channels[i].ctr = 0; - _channels[i].input = Audio::makeRawMemoryStream_OLD((const byte*)data, size, DisposeAfterUse::YES, rate, (loopStart != loopEnd ? Audio::FLAG_LOOP : 0), loopStart, loopEnd); + _channels[i].input = Audio::makeRawMemoryStream_OLD((const byte*)data, size, DisposeAfterUse::YES, rate, 0, loopStart, loopEnd); // read the first sample _channels[i].input->readBuffer(&_channels[i].pos, 1); } diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp index 05912208b0..6061c775a9 100644 --- a/engines/scumm/sound.cpp +++ b/engines/scumm/sound.cpp @@ -164,7 +164,6 @@ void Sound::playSound(int soundID) { Audio::AudioStream *stream; int size = -1; int rate; - byte flags = Audio::FLAG_UNSIGNED; if (_vm->_game.id == GID_LOOM && _vm->_game.platform == Common::kPlatformPCEngine) { if (soundID >= 13 && soundID <= 32) { @@ -204,7 +203,7 @@ void Sound::playSound(int soundID) { sound = (byte *)malloc(size); memcpy(sound, ptr, size); - stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, flags); + stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED); _mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID); } // WORKAROUND bug # 1311447 @@ -227,7 +226,7 @@ void Sound::playSound(int soundID) { // Allocate a sound buffer, copy the data into it, and play sound = (byte *)malloc(size); memcpy(sound, ptr, size); - stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, flags); + stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED); _mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID); } // Support for sampled sound effects in Monkey Island 1 and 2 @@ -299,7 +298,7 @@ void Sound::playSound(int soundID) { // Allocate a sound buffer, copy the data into it, and play sound = (byte *)malloc(size); memcpy(sound, ptr + 6, size); - stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, flags); + stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED); _mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID); } else if ((_vm->_game.platform == Common::kPlatformFMTowns && _vm->_game.version == 3) || READ_BE_UINT32(ptr) == MKID_BE('SOUN') || READ_BE_UINT32(ptr) == MKID_BE('TOWS')) { @@ -350,10 +349,7 @@ void Sound::playSound(int soundID) { } size -= waveSize; - if (loopEnd > 0) - flags |= Audio::FLAG_LOOP; - - stream = Audio::makeRawMemoryStream_OLD(sound, waveSize, DisposeAfterUse::YES, rate, flags, loopStart, loopEnd); + stream = Audio::makeRawMemoryStream_OLD(sound, waveSize, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED, loopStart, loopEnd); _mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID, 255, 0); } break; @@ -426,7 +422,6 @@ void Sound::playSound(int soundID) { // offset 26: ? if != 0: stop current sound? // offset 27: ? loopcount? 0xff == -1 for infinite? - flags = 0; size = READ_BE_UINT16(ptr + 12); assert(size); @@ -442,11 +437,10 @@ void Sound::playSound(int soundID) { // so maybe this is not really a problem. loopStart = READ_BE_UINT16(ptr + 10) - READ_BE_UINT16(ptr + 8); loopEnd = READ_BE_UINT16(ptr + 14); - flags |= Audio::FLAG_LOOP; } memcpy(sound, ptr + READ_BE_UINT16(ptr + 8), size); - stream = Audio::makeRawMemoryStream_OLD(sound, size, DisposeAfterUse::YES, rate, flags, loopStart, loopEnd); + stream = Audio::makeRawMemoryStream_OLD(sound, size, DisposeAfterUse::YES, rate, 0, loopStart, loopEnd); _mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID, vol, 0); } else { diff --git a/engines/sky/sound.cpp b/engines/sky/sound.cpp index b6792907e9..2a00dbb492 100644 --- a/engines/sky/sound.cpp +++ b/engines/sky/sound.cpp @@ -1111,17 +1111,13 @@ void Sound::playSound(uint16 sound, uint16 volume, uint8 channel) { uint32 dataLoop = READ_BE_UINT16(_sfxInfo + (sound << 3) + 6); dataOfs += _sfxBaseOfs; - byte flags = Audio::FLAG_UNSIGNED; - uint32 loopSta = 0, loopEnd = 0; if (dataLoop) { loopSta = dataSize - dataLoop; loopEnd = dataSize; - flags |= Audio::FLAG_LOOP; } - - Audio::AudioStream *stream = Audio::makeRawMemoryStream_OLD(_soundData + dataOfs, dataSize, DisposeAfterUse::NO, sampleRate, flags, loopSta, loopEnd); + Audio::AudioStream *stream = Audio::makeRawMemoryStream_OLD(_soundData + dataOfs, dataSize, DisposeAfterUse::NO, sampleRate, Audio::FLAG_UNSIGNED, loopSta, loopEnd); if (channel == 0) _mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_ingameSound0, stream, SOUND_CH0, volume, 0); diff --git a/sound/audiostream.cpp b/sound/audiostream.cpp index a2156b698d..d685de1afe 100644 --- a/sound/audiostream.cpp +++ b/sound/audiostream.cpp @@ -253,7 +253,7 @@ bool SubSeekableAudioStream::seek(const Timestamp &where) { void QueuingAudioStream::queueBuffer(byte *data, uint32 size, DisposeAfterUse::Flag disposeAfterUse, byte flags) { - AudioStream *stream = makeRawMemoryStream_OLD(data, size, disposeAfterUse, getRate(), flags, 0, 0); + AudioStream *stream = makeRawMemoryStream(data, size, disposeAfterUse, getRate(), flags); queueAudioStream(stream, DisposeAfterUse::YES); } diff --git a/sound/raw.cpp b/sound/raw.cpp index 7899c8af87..dae38daeb1 100644 --- a/sound/raw.cpp +++ b/sound/raw.cpp @@ -365,7 +365,7 @@ AudioStream *makeRawMemoryStream_OLD(const byte *ptr, uint32 len, uint loopStart, uint loopEnd) { SeekableAudioStream *s = makeRawMemoryStream(ptr, len, autoFree, rate, flags); - if ((flags & Audio::FLAG_LOOP) != 0) { + if (loopStart != loopEnd) { const bool isStereo = (flags & Audio::FLAG_STEREO) != 0; const bool is16Bit = (flags & Audio::FLAG_16BITS) != 0; diff --git a/sound/raw.h b/sound/raw.h index d187c325e1..bd54f55676 100644 --- a/sound/raw.h +++ b/sound/raw.h @@ -58,10 +58,7 @@ enum RawFlags { FLAG_LITTLE_ENDIAN = 1 << 2, /** sound is in stereo (default: mono) */ - FLAG_STEREO = 1 << 3, - - /** loop the audio (deprecated) */ - FLAG_LOOP = 1 << 6 + FLAG_STEREO = 1 << 3 }; -- cgit v1.2.3