Reorder params to Audio::makeRawMemoryStream
svn-id: r47492
This commit is contained in:
parent
9369c9f3c5
commit
4b996e7de7
34 changed files with 75 additions and 71 deletions
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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];
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
)
|
||||
);
|
||||
|
|
|
@ -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')) {
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
19
sound/raw.h
19
sound/raw.h
|
@ -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
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue