aboutsummaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorTravis Howell2009-01-27 03:21:05 +0000
committerTravis Howell2009-01-27 03:21:05 +0000
commitf002e06fe058c4c0fe11d44fc844f88ff90a389a (patch)
treec709be9147cc87b2ac26fba52de8ecc0484d4a6a /sound
parent82a741419728a7c908ee31709051e9a0de0daa10 (diff)
downloadscummvm-rg350-f002e06fe058c4c0fe11d44fc844f88ff90a389a.tar.gz
scummvm-rg350-f002e06fe058c4c0fe11d44fc844f88ff90a389a.tar.bz2
scummvm-rg350-f002e06fe058c4c0fe11d44fc844f88ff90a389a.zip
Add looping support to makeVOCStream().
svn-id: r36093
Diffstat (limited to 'sound')
-rw-r--r--sound/voc.cpp6
-rw-r--r--sound/voc.h4
2 files changed, 5 insertions, 5 deletions
diff --git a/sound/voc.cpp b/sound/voc.cpp
index acad3ebed4..ce659460f0 100644
--- a/sound/voc.cpp
+++ b/sound/voc.cpp
@@ -156,14 +156,14 @@ byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate) {
return loadVOCFromStream(stream, size, rate, loops, begin_loop, end_loop);
}
-AudioStream *makeVOCStream(Common::ReadStream &stream) {
+AudioStream *makeVOCStream(Common::ReadStream &stream, byte flags, uint loopStart, uint loopEnd) {
int size, rate;
- byte *data = loadVOCFromStream(stream, size, rate);
+ byte *data = loadVOCFromStream(stream, size, rate);
if (!data)
return 0;
- return makeLinearInputStream(data, size, rate, Audio::Mixer::FLAG_AUTOFREE | Audio::Mixer::FLAG_UNSIGNED, 0, 0);
+ return makeLinearInputStream(data, size, rate, flags | Audio::Mixer::FLAG_AUTOFREE | Audio::Mixer::FLAG_UNSIGNED, loopStart, loopEnd);
}
diff --git a/sound/voc.h b/sound/voc.h
index 4641b3b6aa..f9f9d9d728 100644
--- a/sound/voc.h
+++ b/sound/voc.h
@@ -76,11 +76,11 @@ extern byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate)
/**
* Try to load a VOC from the given seekable stream and create an AudioStream
* from that data. Currently this function only supports uncompressed raw PCM
- * data. Looping is not supported.
+ * data. Optionally supports (infinite) looping of a portion of the data.
*
* This function uses loadVOCFromStream() internally.
*/
-AudioStream *makeVOCStream(Common::ReadStream &stream);
+AudioStream *makeVOCStream(Common::ReadStream &stream, byte flags = 0, uint loopStart = 0, uint loopEnd = 0);
} // End of namespace Audio