aboutsummaryrefslogtreecommitdiff
path: root/engines/queen
diff options
context:
space:
mode:
Diffstat (limited to 'engines/queen')
-rw-r--r--engines/queen/sound.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/queen/sound.cpp b/engines/queen/sound.cpp
index b03084f7bc..71467b9f99 100644
--- a/engines/queen/sound.cpp
+++ b/engines/queen/sound.cpp
@@ -39,6 +39,7 @@
#include "sound/flac.h"
#include "sound/mididrv.h"
#include "sound/mp3.h"
+#include "sound/raw.h"
#include "sound/vorbis.h"
#define SB_HEADER_SIZE_V104 110
@@ -328,7 +329,9 @@ void SBSound::playSoundData(Common::File *f, uint32 size, Audio::SoundHandle *so
if (sound) {
f->read(sound, size);
Audio::Mixer::SoundType type = (soundHandle == &_speechHandle) ? Audio::Mixer::kSpeechSoundType : Audio::Mixer::kSFXSoundType;
- _mixer->playRaw(type, soundHandle, sound, size, DisposeAfterUse::YES, 11840, Audio::Mixer::FLAG_UNSIGNED);
+
+ Audio::AudioStream *stream = Audio::makeRawMemoryStream(sound, size, DisposeAfterUse::YES, 11840, Audio::Mixer::FLAG_UNSIGNED);
+ _mixer->playInputStream(type, soundHandle, stream);
}
}
@@ -610,7 +613,9 @@ void AmigaSound::playSound(const char *base) {
uint8 *soundData = (uint8 *)malloc(soundSize);
if (soundData) {
f->read(soundData, soundSize);
- _mixer->playRaw(Audio::Mixer::kSFXSoundType, &_sfxHandle, soundData, soundSize, DisposeAfterUse::YES, 11025, 0);
+
+ Audio::AudioStream *stream = Audio::makeRawMemoryStream(soundData, soundSize, DisposeAfterUse::YES, 11025, 0);
+ _mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_sfxHandle, stream);
}
}
}