Reorder params to Audio::makeRawMemoryStream

svn-id: r47492
This commit is contained in:
Max Horn 2010-01-23 23:55:35 +00:00
parent 9369c9f3c5
commit 4b996e7de7
34 changed files with 75 additions and 71 deletions

View file

@ -292,7 +292,7 @@ Audio::AudioStream *RawSound::makeAudioStream(uint sound) {
assert(buffer);
_file->read(buffer, size);
return Audio::makeRawMemoryStream(buffer, size, DisposeAfterUse::YES, 22050, _flags);
return Audio::makeRawMemoryStream(buffer, size, 22050, _flags);
}
void RawSound::playSound(uint sound, uint loopSound, Audio::Mixer::SoundType type, Audio::SoundHandle *handle, bool loop, int vol) {
@ -737,7 +737,7 @@ void Sound::playRawData(byte *soundData, uint sound, uint size, uint freq) {
if (_vm->getPlatform() == Common::kPlatformPC)
flags = Audio::FLAG_UNSIGNED;
Audio::AudioStream *stream = Audio::makeRawMemoryStream(buffer, size, DisposeAfterUse::YES, freq, flags);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(buffer, size, freq, flags);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_effectsHandle, stream);
}

View file

@ -845,7 +845,7 @@ void PaulaSound::update() {
void PaulaSound::playSoundChannel(int channel, int frequency, uint8 *data, int size, int volume) {
assert(frequency > 0);
frequency = PAULA_FREQ / frequency;
Audio::AudioStream *stream = Audio::makeRawMemoryStream(data, size, DisposeAfterUse::YES, frequency, 0);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(data, size, frequency, 0);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_channelsTable[channel], stream);
_mixer->setChannelVolume(_channelsTable[channel], volume * Audio::Mixer::kMaxChannelVolume / 63);
}

View file

@ -202,7 +202,7 @@ void Sound::playSoundBuffer(Audio::SoundHandle *handle, const SoundSample &buffe
// Don't use DisposeAfterUse::YES, because our caching system deletes samples by itself.
Audio::AudioStream *stream = Audio::makeLoopingAudioStream(
Audio::makeRawMemoryStream(buffer._data, buffer._length, DisposeAfterUse::NO, buffer._frequency, flags),
Audio::makeRawMemoryStream(buffer._data, buffer._length, buffer._frequency, flags, DisposeAfterUse::NO),
loop ? 0 : 1);
_mixer->playInputStream(soundType, handle, stream, -1, volume);
}

View file

@ -185,7 +185,7 @@ void DrasculaEngine::playFile(const char *fname) {
if (ConfMan.getBool("speech_mute"))
memset(soundData, 0x80, soundSize); // Mute speech but keep the pause
Audio::AudioStream *stream = Audio::makeRawMemoryStream(soundData, soundSize - 64, DisposeAfterUse::YES,
Audio::AudioStream *stream = Audio::makeRawMemoryStream(soundData, soundSize - 64,
11025, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSpeechSoundType, &_soundHandle, stream);
} else

View file

@ -3925,8 +3925,8 @@ void SoundTowns::playSoundEffect(uint8 track) {
uint32 outputRate = uint32(11025 * calculatePhaseStep(note, sfxRootNoteOffs, sfxRate, 11025, 0x2000));
_currentSFX = Audio::makeRawMemoryStream(sfxPlaybackBuffer, playbackBufferSize, DisposeAfterUse::YES,
outputRate, Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN);
_currentSFX = Audio::makeRawMemoryStream(sfxPlaybackBuffer, playbackBufferSize,
outputRate, Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_sfxHandle, _currentSFX);
}
@ -4297,8 +4297,8 @@ int32 SoundTownsPC98_v2::voicePlay(const char *file, Audio::SoundHandle *handle,
uint32 outputRate = uint32(11025 * SoundTowns::calculatePhaseStep(0x3c, 0x3c, sfxRate, 11025, 0x2000));
_currentSFX = Audio::makeRawMemoryStream(sfx, outsize, DisposeAfterUse::YES, outputRate,
Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN);
_currentSFX = Audio::makeRawMemoryStream(sfx, outsize, outputRate,
Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_soundChannels[h], _currentSFX);
if (handle)
*handle = _soundChannels[h];

View file

@ -94,7 +94,7 @@ void Sound::playSound(const char *soundName, int volume, bool loop, int channel)
// Sound format is 8bit mono, unsigned, 11025kHz
Audio::AudioStream *stream = Audio::makeLoopingAudioStream(
Audio::makeRawMemoryStream(buffer, bufferSize, DisposeAfterUse::YES, 11025, Audio::FLAG_UNSIGNED),
Audio::makeRawMemoryStream(buffer, bufferSize, 11025, Audio::FLAG_UNSIGNED),
loop ? 0 : 1);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &handle->handle, stream, -1, volume);
}
@ -146,7 +146,7 @@ void Sound::playVoice(const char *soundName, int volume) {
_vm->res()->toss(soundName);
// Voice format is 8bit mono, unsigned, 11025kHz
Audio::AudioStream *stream = Audio::makeRawMemoryStream(buffer, soundStream->size(), DisposeAfterUse::YES, 11025, Audio::FLAG_UNSIGNED);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(buffer, soundStream->size(), 11025, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &handle->handle, stream, -1, volume);
}
@ -260,7 +260,7 @@ void Sound::playDSRSound(int soundIndex, int volume, bool loop) {
// Play sound
Audio::AudioStream *stream = Audio::makeLoopingAudioStream(
Audio::makeRawMemoryStream(buffer,
_dsrFile.dsrEntries[soundIndex]->uncompSize, DisposeAfterUse::YES,
_dsrFile.dsrEntries[soundIndex]->uncompSize,
_dsrFile.dsrEntries[soundIndex]->frequency, Audio::FLAG_UNSIGNED),
loop ? 0 : 1);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &handle->handle, stream, -1, volume);

View file

@ -262,7 +262,7 @@ void SoundResource::load(byte *source, int size) {
Audio::AudioStream *SoundResource::getAudioStream(int soundRate, bool loop) {
Audio::RewindableAudioStream *stream =
Audio::makeRawMemoryStream(_soundData, _soundSize, DisposeAfterUse::NO, soundRate, Audio::FLAG_UNSIGNED);
Audio::makeRawMemoryStream(_soundData, _soundSize, soundRate, Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
if (loop)
return Audio::makeLoopingAudioStream(stream, 0);

View file

@ -454,7 +454,7 @@ Audio::AudioStream *Sound::makeMohawkWaveStream(Common::SeekableReadStream *stre
if (data_chunk.channels == 2)
flags |= Audio::FLAG_STEREO;
return Audio::makeRawMemoryStream(data_chunk.audio_data, data_chunk.size, DisposeAfterUse::YES, data_chunk.sample_rate, flags);
return Audio::makeRawMemoryStream(data_chunk.audio_data, data_chunk.size, data_chunk.sample_rate, flags);
} else if (data_chunk.encoding == kCodecADPCM) {
Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(data_chunk.audio_data, data_chunk.size, DisposeAfterUse::YES);
uint32 blockAlign = data_chunk.channels * data_chunk.bitsPerSample / 8;
@ -494,7 +494,7 @@ Audio::AudioStream *Sound::makeOldMohawkWaveStream(Common::SeekableReadStream *s
stream->read(data, size);
delete stream;
return Audio::makeRawMemoryStream(data, size, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED);
return Audio::makeRawMemoryStream(data, size, rate, Audio::FLAG_UNSIGNED);
}
SndHandle *Sound::getHandle() {

View file

@ -1170,7 +1170,7 @@ Audio::AudioStream *QTPlayer::createAudioStream(Common::SeekableReadStream *stre
byte *data = (byte *)malloc(dataSize);
stream->read(data, dataSize);
delete stream;
return Audio::makeRawMemoryStream(data, dataSize, DisposeAfterUse::YES, _streams[_audioStreamIndex]->sample_rate, flags);
return Audio::makeRawMemoryStream(data, dataSize, _streams[_audioStreamIndex]->sample_rate, flags);
} else if (_streams[_audioStreamIndex]->codec_tag == MKID_BE('ima4')) {
// Riven uses this codec (as do some Myst ME videos)
return Audio::makeADPCMStream(stream, true, stream->size(), Audio::kADPCMApple, _streams[_audioStreamIndex]->sample_rate, _streams[_audioStreamIndex]->channels, 34);

View file

@ -416,7 +416,7 @@ Audio::AudioStream *DosSoundMan_br::loadChannelData(const char *filename, Channe
int rate = 11025;
ch->stream = Audio::makeLoopingAudioStream(
Audio::makeRawMemoryStream(data, dataSize, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED),
Audio::makeRawMemoryStream(data, dataSize, rate, Audio::FLAG_UNSIGNED),
looping ? 0 : 1);
return ch->stream;
}
@ -477,7 +477,7 @@ Audio::AudioStream *AmigaSoundMan_br::loadChannelData(const char *filename, Chan
// TODO: Confirm sound rate
int rate = 11025;
input = Audio::makeRawMemoryStream((byte *)data, dataSize, DisposeAfterUse::YES, rate, 0);
input = Audio::makeRawMemoryStream((byte *)data, dataSize, rate, 0);
} else {
input = Audio::make8SVXStream(*stream, looping);
}

View file

@ -377,7 +377,7 @@ Audio::AudioStream *AmigaSoundMan_ns::loadChannelData(const char *filename, Chan
if (!scumm_stricmp("beep", filename)) {
int rate = 11934;
ch->volume = 160;
input = Audio::makeRawMemoryStream((byte *)beepSoundBuffer, beepSoundBufferSize, DisposeAfterUse::NO, rate, 0);
input = Audio::makeRawMemoryStream((byte *)beepSoundBuffer, beepSoundBufferSize, rate, 0, DisposeAfterUse::NO);
} else {
Common::SeekableReadStream *stream = _vm->_disk->loadSound(filename);
input = Audio::make8SVXStream(*stream, looping);

View file

@ -330,7 +330,7 @@ void SBSound::playSoundData(Common::File *f, uint32 size, Audio::SoundHandle *so
f->read(sound, size);
Audio::Mixer::SoundType type = (soundHandle == &_speechHandle) ? Audio::Mixer::kSpeechSoundType : Audio::Mixer::kSFXSoundType;
Audio::AudioStream *stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, 11840, Audio::FLAG_UNSIGNED);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(sound, size, 11840, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(type, soundHandle, stream);
}
}
@ -614,7 +614,7 @@ void AmigaSound::playSound(const char *base) {
if (soundData) {
f->read(soundData, soundSize);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(soundData, soundSize, DisposeAfterUse::YES, 11025, 0);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(soundData, soundSize, 11025, 0);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_sfxHandle, stream);
}
}

View file

@ -73,7 +73,7 @@ void Sound::playSoundBuffer(Audio::SoundHandle *handle, const SoundBuffer &buffe
Audio::Mixer::kSpeechSoundType : Audio::Mixer::kSFXSoundType;
if (!buffer.isCompressed) {
stream = Audio::makeRawMemoryStream(buffer.buffer, buffer.size, DisposeAfterUse::YES, buffer.frequency, buffer.flags);
stream = Audio::makeRawMemoryStream(buffer.buffer, buffer.size, buffer.frequency, buffer.flags);
} else {
Common::SeekableReadStream *memStream = new Common::MemoryReadStream(buffer.buffer, buffer.size, DisposeAfterUse::YES);

View file

@ -245,7 +245,7 @@ Audio::RewindableAudioStream *AudioPlayer::getAudioStream(uint32 number, uint32
}
if (data)
audioStream = Audio::makeRawMemoryStream(data, size, DisposeAfterUse::YES, _audioRate, flags);
audioStream = Audio::makeRawMemoryStream(data, size, _audioRate, flags);
if (audioStream) {
*sampleLen = (flags & Audio::FLAG_16BITS ? size >> 1 : size) * 60 / _audioRate;

View file

@ -552,7 +552,7 @@ static Audio::AudioStream *makeStream(byte *data, int size, int rate) {
// Convert stream format flags
int flags = Audio::FLAG_UNSIGNED;
return Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, flags, 0, 0);
return Audio::makeRawMemoryStream(sound, size, rate, flags);
}
Audio::AudioStream *Sci0SongIterator::getAudioStream() {

View file

@ -184,7 +184,7 @@ void SciMusic::soundInitSnd(MusicEntry *pSnd) {
// Amiga SCI1 games had signed sound data
if (_soundVersion >= SCI_VERSION_1_EARLY && ((SciEngine *)g_engine)->getPlatform() == Common::kPlatformAmiga)
flags = 0;
pSnd->pStreamAud = Audio::makeRawMemoryStream(channelData, track->digitalSampleSize, DisposeAfterUse::NO, track->digitalSampleRate, flags);
pSnd->pStreamAud = Audio::makeRawMemoryStream(channelData, track->digitalSampleSize, track->digitalSampleRate, flags, DisposeAfterUse::NO);
delete pSnd->pLoopStream;
pSnd->pLoopStream = 0;
pSnd->soundType = Audio::Mixer::kSFXSoundType;

View file

@ -171,7 +171,8 @@ void CUP_Player::updateSfx() {
uint32 soundSize = READ_BE_UINT32(soundData + 4);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &sfxChannel->handle,
Audio::makeLoopingAudioStream(
Audio::makeRawMemoryStream(soundData + 8, soundSize - 8, DisposeAfterUse::NO, 11025, Audio::FLAG_UNSIGNED),
Audio::makeRawMemoryStream(soundData + 8, soundSize - 8,
11025, Audio::FLAG_UNSIGNED, DisposeAfterUse::NO),
(sfx->flags & kSfxFlagLoop) ? 0 : 1
)
);

View file

@ -574,7 +574,7 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags)
musicFile.close();
if (_vm->_game.heversion == 70) {
stream = Audio::makeRawMemoryStream(spoolPtr, size, DisposeAfterUse::NO, 11025, flags);
stream = Audio::makeRawMemoryStream(spoolPtr, size, 11025, flags, DisposeAfterUse::NO);
_mixer->playInputStream(type, &_heSoundChannels[heChannel], stream, soundID);
return;
}
@ -667,9 +667,9 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags)
#ifdef SCUMM_LITTLE_ENDIAN
flags |= Audio::FLAG_LITTLE_ENDIAN;
#endif
stream = Audio::makeRawMemoryStream(sound + heOffset, size - heOffset, DisposeAfterUse::YES, rate, flags);
stream = Audio::makeRawMemoryStream(sound + heOffset, size - heOffset, rate, flags);
} else {
stream = Audio::makeRawMemoryStream(ptr + memStream.pos() + heOffset, size - heOffset, DisposeAfterUse::YES, rate, flags);
stream = Audio::makeRawMemoryStream(ptr + memStream.pos() + heOffset, size - heOffset, rate, flags);
}
_mixer->playInputStream(type, &_heSoundChannels[heChannel],
Audio::makeLoopingAudioStream(stream, (heFlags & 1) ? 0 : 1), soundID);
@ -729,7 +729,7 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags)
_mixer->stopHandle(_heSoundChannels[heChannel]);
stream = Audio::makeRawMemoryStream(ptr + heOffset + 8, size, DisposeAfterUse::NO, rate, flags);
stream = Audio::makeRawMemoryStream(ptr + heOffset + 8, size, rate, flags, DisposeAfterUse::NO);
_mixer->playInputStream(type, &_heSoundChannels[heChannel],
Audio::makeLoopingAudioStream(stream, (heFlags & 1) ? 0 : 1), soundID);
}
@ -750,7 +750,7 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags)
_mixer->stopID(_currentMusic);
_currentMusic = soundID;
stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, 0);
stream = Audio::makeRawMemoryStream(sound, size, rate, 0);
_mixer->playInputStream(Audio::Mixer::kMusicSoundType, NULL, stream, soundID);
}
else if (READ_BE_UINT32(ptr) == MKID_BE('MIDI')) {

View file

@ -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, 0, loopStart, loopEnd);
_channels[i].input = Audio::makeRawMemoryStream_OLD((const byte*)data, size, rate, 0, loopStart, loopEnd);
// read the first sample
_channels[i].input->readBuffer(&_channels[i].pos, 1);
}

View file

@ -203,7 +203,7 @@ void Sound::playSound(int soundID) {
sound = (byte *)malloc(size);
memcpy(sound, ptr, size);
stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED);
stream = Audio::makeRawMemoryStream(sound, size, rate, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID);
}
// WORKAROUND bug # 1311447
@ -226,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, Audio::FLAG_UNSIGNED);
stream = Audio::makeRawMemoryStream(sound, size, rate, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID);
}
// Support for sampled sound effects in Monkey Island 1 and 2
@ -298,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, Audio::FLAG_UNSIGNED);
stream = Audio::makeRawMemoryStream(sound, size, 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')) {
@ -349,7 +349,7 @@ void Sound::playSound(int soundID) {
}
size -= waveSize;
stream = Audio::makeRawMemoryStream_OLD(sound, waveSize, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED, loopStart, loopEnd);
stream = Audio::makeRawMemoryStream_OLD(sound, waveSize, rate, Audio::FLAG_UNSIGNED, loopStart, loopEnd);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID, 255, 0);
}
break;
@ -440,7 +440,7 @@ void Sound::playSound(int soundID) {
}
memcpy(sound, ptr + READ_BE_UINT16(ptr + 8), size);
stream = Audio::makeRawMemoryStream_OLD(sound, size, DisposeAfterUse::YES, rate, 0, loopStart, loopEnd);
stream = Audio::makeRawMemoryStream_OLD(sound, size, rate, 0, loopStart, loopEnd);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, NULL, stream, soundID, vol, 0);
}
else {

View file

@ -739,8 +739,7 @@ bool Intro::nextPart(uint16 *&data) {
// directly, but this will have to do for now.
memset(vData, 127, sizeof(DataFileHeader));
stream = Audio::makeRawMemoryStream(vData, _skyDisk->_lastLoadedFileSize, DisposeAfterUse::YES,
11025, Audio::FLAG_UNSIGNED);
stream = Audio::makeRawMemoryStream(vData, _skyDisk->_lastLoadedFileSize, 11025, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSpeechSoundType, &_voice, stream, SOUND_VOICE);
return true;
case WAITVOICE:
@ -756,14 +755,12 @@ bool Intro::nextPart(uint16 *&data) {
return true;
case LOOPBG:
_mixer->stopID(SOUND_BG);
stream = Audio::makeRawMemoryStream(_bgBuf + 256, _bgSize - 768, DisposeAfterUse::YES,
11025, Audio::FLAG_UNSIGNED);
stream = Audio::makeRawMemoryStream(_bgBuf + 256, _bgSize - 768, 11025, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_bgSfx, Audio::makeLoopingAudioStream(stream, 0), SOUND_BG);
return true;
case PLAYBG:
_mixer->stopID(SOUND_BG);
stream = Audio::makeRawMemoryStream(_bgBuf + 256, _bgSize - 768, DisposeAfterUse::YES,
11025, Audio::FLAG_UNSIGNED);
stream = Audio::makeRawMemoryStream(_bgBuf + 256, _bgSize - 768, 11025, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_bgSfx, stream, SOUND_BG);
return true;
case STOPBG:

View file

@ -1045,7 +1045,7 @@ void Sound::playSound(uint32 id, byte *sound, uint32 size, Audio::SoundHandle *h
_mixer->stopID(id);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(buffer, size, DisposeAfterUse::YES, 11025, flags);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(buffer, size, 11025, flags);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, handle, stream, id);
}
@ -1117,7 +1117,8 @@ void Sound::playSound(uint16 sound, uint16 volume, uint8 channel) {
loopEnd = dataSize;
}
Audio::AudioStream *stream = Audio::makeRawMemoryStream_OLD(_soundData + dataOfs, dataSize, DisposeAfterUse::NO, sampleRate, Audio::FLAG_UNSIGNED, loopSta, loopEnd);
Audio::AudioStream *stream = Audio::makeRawMemoryStream_OLD(_soundData + dataOfs, dataSize, sampleRate,
Audio::FLAG_UNSIGNED, loopSta, loopEnd, DisposeAfterUse::NO);
if (channel == 0)
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_ingameSound0, stream, SOUND_CH0, volume, 0);
@ -1245,7 +1246,7 @@ bool Sound::startSpeech(uint16 textNum) {
_mixer->stopID(SOUND_SPEECH);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(playBuffer, speechSize, DisposeAfterUse::YES, rate, Audio::FLAG_UNSIGNED);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(playBuffer, speechSize, rate, Audio::FLAG_UNSIGNED);
_mixer->playInputStream(Audio::Mixer::kSpeechSoundType, &_ingameSpeech, stream, SOUND_SPEECH);
return true;
}

View file

@ -271,7 +271,7 @@ void Sound::playSample(QueueElement *elem) {
if (READ_LE_UINT16(sampleData + 0x16) == 2)
flags |= Audio::FLAG_STEREO;
Audio::AudioStream *stream = Audio::makeLoopingAudioStream(
Audio::makeRawMemoryStream(sampleData + 0x2C, size, DisposeAfterUse::NO, 11025, flags),
Audio::makeRawMemoryStream(sampleData + 0x2C, size, 11025, flags, DisposeAfterUse::NO),
(_fxList[elem->id].type == FX_LOOP) ? 0 : 1);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &elem->handle, stream, elem->id, volume, pan);
}
@ -360,7 +360,7 @@ bool Sound::startSpeech(uint16 roomNo, uint16 localNo) {
uint32 size;
int16 *data = uncompressSpeech(index + _cowHeaderSize, sampleSize, &size);
if (data) {
stream = Audio::makeRawMemoryStream((byte *)data, size, DisposeAfterUse::YES, 11025, SPEECH_FLAGS);
stream = Audio::makeRawMemoryStream((byte *)data, size, 11025, SPEECH_FLAGS);
_mixer->playInputStream(Audio::Mixer::kSpeechSoundType, &_speechHandle, stream, SOUND_SPEECH_ID, speechVol, speechPan);
}
} else if (_cowMode == CowPSX && sampleSize != 0xffffffff) {

View file

@ -898,7 +898,7 @@ void TeenAgentEngine::playSoundNow(byte id) {
in->read(data, size);
//debug(0, "playing %u samples...", size);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(data, size, DisposeAfterUse::YES, 11025, 0);
Audio::AudioStream *stream = Audio::makeRawMemoryStream(data, size, 11025, 0);
_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_soundHandle, stream);
}

View file

@ -154,7 +154,7 @@ bool SoundManager::playSample(int id, Audio::Mixer::SoundType type, Audio::Sound
#endif
break;
default:
sampleStream = Audio::makeRawMemoryStream(sampleBuf, sampleLen, DisposeAfterUse::YES, 22050, Audio::FLAG_UNSIGNED);
sampleStream = Audio::makeRawMemoryStream(sampleBuf, sampleLen, 22050, Audio::FLAG_UNSIGNED);
break;
}
if (sampleStream) {

View file

@ -599,7 +599,7 @@ Audio::RewindableAudioStream *AnimationSequencePlayer::loadSound(int index, Anim
uint8 *sampleData = (uint8 *)malloc(size);
if (sampleData) {
f.read(sampleData, size);
stream = Audio::makeRawMemoryStream(sampleData, size, DisposeAfterUse::YES, rate, flags);
stream = Audio::makeRawMemoryStream(sampleData, size, rate, flags);
}
}
break;

View file

@ -173,7 +173,7 @@ SeekableAudioStream *makeAIFFStream(Common::SeekableReadStream &stream) {
stream.read(data, size);
// Since we allocated our own buffer for the data, we must specify DisposeAfterUse::YES.
return makeRawMemoryStream(data, size, DisposeAfterUse::YES, rate, flags);
return makeRawMemoryStream(data, size, rate, flags);
}
} // End of namespace Audio

View file

@ -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(data, size, disposeAfterUse, getRate(), flags);
AudioStream *stream = makeRawMemoryStream(data, size, getRate(), flags, disposeAfterUse);
queueAudioStream(stream, DisposeAfterUse::YES);
}

View file

@ -108,7 +108,7 @@ AudioStream *make8SVXStream(Common::ReadStream &input, bool loop) {
A8SVXLoader loader;
loader.load(input);
SeekableAudioStream *stream = Audio::makeRawMemoryStream((byte *)loader._data, loader._dataSize, DisposeAfterUse::YES, loader._header.samplesPerSec, 0);
SeekableAudioStream *stream = Audio::makeRawMemoryStream((byte *)loader._data, loader._dataSize, loader._header.samplesPerSec, 0);
uint32 loopStart = 0, loopEnd = 0;
if (loop) {

View file

@ -329,8 +329,9 @@ bool RawDiskStream<stereo, is16Bit, isUnsigned, isLE>::seek(const Timestamp &whe
return new RawMemoryStream<STEREO, false, UNSIGNED, false>(rate, ptr, len, autoFree)
SeekableAudioStream *makeRawMemoryStream(const byte *ptr, uint32 len,
DisposeAfterUse::Flag autoFree,
int rate, byte flags) {
int rate, byte flags,
DisposeAfterUse::Flag autoFree
) {
const bool isStereo = (flags & Audio::FLAG_STEREO) != 0;
const bool is16Bit = (flags & Audio::FLAG_16BITS) != 0;
const bool isUnsigned = (flags & Audio::FLAG_UNSIGNED) != 0;
@ -360,10 +361,11 @@ SeekableAudioStream *makeRawMemoryStream(const byte *ptr, uint32 len,
AudioStream *makeRawMemoryStream_OLD(const byte *ptr, uint32 len,
DisposeAfterUse::Flag autoFree,
int rate, byte flags,
uint loopStart, uint loopEnd) {
SeekableAudioStream *s = makeRawMemoryStream(ptr, len, autoFree, rate, flags);
uint loopStart, uint loopEnd,
DisposeAfterUse::Flag autoFree
) {
SeekableAudioStream *s = makeRawMemoryStream(ptr, len, rate, flags, autoFree);
if (loopStart != loopEnd) {
const bool isStereo = (flags & Audio::FLAG_STEREO) != 0;

View file

@ -70,16 +70,18 @@ enum RawFlags {
* then this buffer will be deallocated using free(). So do not
* use a buffer allocated with new[]!
*
* @param ptr Data
* @param len Length of the data (in bytes!)
* @param rate The sample rate of the data.
* @param flags Flags combination.
* @param ptr pointer to a buffer containing audio data
* @param len length of the buffer in bytes
* @param rate sample rate of the data
* @param flags audio format flags combination
* @see Mixer::RawFlags
* @param autofreeBuffer whether the data buffer should be destroyed after playback
* @return The new SeekableAudioStream (or 0 on failure).
*/
SeekableAudioStream *makeRawMemoryStream(const byte *ptr, uint32 len,
DisposeAfterUse::Flag autofreeBuffer,
int rate, byte flags);
int rate, byte flags,
DisposeAfterUse::Flag autofreeBuffer = DisposeAfterUse::YES
);
/**
* NOTE:
@ -93,9 +95,10 @@ SeekableAudioStream *makeRawMemoryStream(const byte *ptr, uint32 len,
* of the data.
*/
AudioStream *makeRawMemoryStream_OLD(const byte *ptr, uint32 len,
DisposeAfterUse::Flag autofreeBuffer,
int rate, byte flags,
uint loopStart, uint loopEnd);
uint loopStart, uint loopEnd,
DisposeAfterUse::Flag autofreeBuffer = DisposeAfterUse::YES
);
/**

View file

@ -524,7 +524,7 @@ AudioStream *makeShortenStream(Common::SeekableReadStream &stream) {
return 0;
// Since we allocated our own buffer for the data, we must specify DisposeAfterUse::YES.
return makeRawMemoryStream(data, size, DisposeAfterUse::YES, rate, flags);
return makeRawMemoryStream(data, size, rate, flags);
}
} // End of namespace Audio

View file

@ -353,7 +353,7 @@ AudioStream *makeVOCStream(Common::SeekableReadStream &stream, byte flags, uint
if (!data)
return 0;
return makeRawMemoryStream_OLD(data, size, DisposeAfterUse::YES, rate, flags, loopStart, loopEnd);
return makeRawMemoryStream_OLD(data, size, rate, flags, loopStart, loopEnd);
#endif
}
@ -368,7 +368,7 @@ SeekableAudioStream *makeVOCStream(Common::SeekableReadStream &stream, byte flag
if (!data)
return 0;
return makeRawMemoryStream(data, size, DisposeAfterUse::YES, rate, flags);
return makeRawMemoryStream(data, size, rate, flags);
#endif
}

View file

@ -189,7 +189,7 @@ RewindableAudioStream *makeWAVStream(Common::SeekableReadStream *stream, Dispose
delete stream;
// Since we allocated our own buffer for the data, we must specify DisposeAfterUse::YES.
return makeRawMemoryStream(data, size, DisposeAfterUse::YES, rate, flags);
return makeRawMemoryStream(data, size, rate, flags);
}
} // End of namespace Audio