[Scummvm-cvs-logs] scummvm master -> 3e1405b939014252611696f7f298b8af58af9786

lordhoto lordhoto at gmail.com
Sun Oct 9 21:33:25 CEST 2011


This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
221434a83f AUDIO: Remove unused makeVOCStream interface.
d4f54a2c97 AUDIO: Strip out some unused VOC code.
3e1405b939 AUDIO: Add default disposeAfterUse value to makeVOCStream again.


Commit: 221434a83f3bcddb7b1cff884027eaef1941bd99
    https://github.com/scummvm/scummvm/commit/221434a83f3bcddb7b1cff884027eaef1941bd99
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2011-10-09T12:23:29-07:00

Commit Message:
AUDIO: Remove unused makeVOCStream interface.

Changed paths:
    audio/decoders/voc.cpp
    audio/decoders/voc.h
    engines/agos/sound.cpp
    engines/scumm/sound.cpp
    engines/touche/resource.cpp



diff --git a/audio/decoders/voc.cpp b/audio/decoders/voc.cpp
index be53f94..c5023f8 100644
--- a/audio/decoders/voc.cpp
+++ b/audio/decoders/voc.cpp
@@ -300,26 +300,6 @@ int parseVOCFormat(Common::SeekableReadStream& stream, RawStreamBlock* block, in
 	return currentBlock;
 }
 
-AudioStream *makeVOCDiskStream(Common::SeekableReadStream *stream, byte flags, DisposeAfterUse::Flag disposeAfterUse) {
-	const int MAX_AUDIO_BLOCKS = 256;
-
-	RawStreamBlock *block = new RawStreamBlock[MAX_AUDIO_BLOCKS];
-	int rate, loops, begin_loop, end_loop;
-
-	int numBlocks = parseVOCFormat(*stream, block, rate, loops, begin_loop, end_loop);
-
-	AudioStream *audioStream = 0;
-
-	// Create an audiostream from the data. Note the numBlocks may be 0,
-	// e.g. when invalid data is encountered. See bug #2890038.
-	if (numBlocks)
-		audioStream = makeRawDiskStream_OLD(stream, block, numBlocks, rate, flags, disposeAfterUse/*, begin_loop, end_loop*/);
-
-	delete[] block;
-
-	return audioStream;
-}
-
 SeekableAudioStream *makeVOCDiskStreamNoLoop(Common::SeekableReadStream *stream, byte flags, DisposeAfterUse::Flag disposeAfterUse) {
 	const int MAX_AUDIO_BLOCKS = 256;
 
@@ -342,47 +322,6 @@ SeekableAudioStream *makeVOCDiskStreamNoLoop(Common::SeekableReadStream *stream,
 
 #endif
 
-
-AudioStream *makeVOCStream(Common::SeekableReadStream *stream, byte flags, uint loopStart, uint loopEnd, DisposeAfterUse::Flag disposeAfterUse) {
-#ifdef STREAM_AUDIO_FROM_DISK
-	return makeVOCDiskStream(stream, flags, disposeAfterUse);
-#else
-	int size, rate;
-
-	byte *data = loadVOCFromStream(*stream, size, rate);
-
-	if (!data) {
-		if (disposeAfterUse == DisposeAfterUse::YES)
-			delete stream;
-		return 0;
-	}
-
-	SeekableAudioStream *s = Audio::makeRawStream(data, size, rate, flags);
-
-	if (loopStart != loopEnd) {
-		const bool isStereo   = (flags & Audio::FLAG_STEREO) != 0;
-		const bool is16Bit    = (flags & Audio::FLAG_16BITS) != 0;
-
-		if (loopEnd == 0)
-			loopEnd = size;
-		assert(loopStart <= loopEnd);
-		assert(loopEnd <= (uint)size);
-
-		// Verify the buffer sizes are sane
-		if (is16Bit && isStereo)
-			assert((loopStart & 3) == 0 && (loopEnd & 3) == 0);
-		else if (is16Bit || isStereo)
-			assert((loopStart & 1) == 0 && (loopEnd & 1) == 0);
-
-		const uint32 extRate = s->getRate() * (is16Bit ? 2 : 1) * (isStereo ? 2 : 1);
-
-		return new SubLoopingAudioStream(s, 0, Timestamp(0, loopStart, extRate), Timestamp(0, loopEnd, extRate));
-	} else {
-		return s;
-	}
-#endif
-}
-
 SeekableAudioStream *makeVOCStream(Common::SeekableReadStream *stream, byte flags, DisposeAfterUse::Flag disposeAfterUse) {
 #ifdef STREAM_AUDIO_FROM_DISK
 	return makeVOCDiskStreamNoLoop(stream, flags, disposeAfterUse);
diff --git a/audio/decoders/voc.h b/audio/decoders/voc.h
index 8bc6dcf..335a66e 100644
--- a/audio/decoders/voc.h
+++ b/audio/decoders/voc.h
@@ -90,13 +90,8 @@ 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. Optionally supports (infinite) looping of a portion of the data.
+ * data.
  *
- * This function uses loadVOCFromStream() internally.
- */
-AudioStream *makeVOCStream(Common::SeekableReadStream *stream, byte flags = 0, uint loopStart = 0, uint loopEnd = 0, DisposeAfterUse::Flag disposeAfterUse = DisposeAfterUse::NO);
-
-/**
  * This does not use any of the looping features of VOC files!
  */
 SeekableAudioStream *makeVOCStream(Common::SeekableReadStream *stream, byte flags, DisposeAfterUse::Flag disposeAfterUse);
diff --git a/engines/agos/sound.cpp b/engines/agos/sound.cpp
index 11a1cd7..9145688 100644
--- a/engines/agos/sound.cpp
+++ b/engines/agos/sound.cpp
@@ -255,7 +255,7 @@ public:
 Audio::AudioStream *VocSound::makeAudioStream(uint sound) {
 	assert(_offsets);
 	_file->seek(_offsets[sound], SEEK_SET);
-	return Audio::makeVOCStream(_file.get(), _flags);
+	return Audio::makeVOCStream(_file.get(), _flags, DisposeAfterUse::NO);
 }
 
 void VocSound::playSound(uint sound, uint loopSound, Audio::Mixer::SoundType type, Audio::SoundHandle *handle, bool loop, int vol) {
diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp
index ba8c6e2..1700e68 100644
--- a/engines/scumm/sound.cpp
+++ b/engines/scumm/sound.cpp
@@ -628,7 +628,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle
 #endif
 			break;
 		default:
-			input = Audio::makeVOCStream(_sfxFile, Audio::FLAG_UNSIGNED);
+			input = Audio::makeVOCStream(_sfxFile, Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
 			break;
 		}
 
diff --git a/engines/touche/resource.cpp b/engines/touche/resource.cpp
index 6df6fc0..d87f801 100644
--- a/engines/touche/resource.cpp
+++ b/engines/touche/resource.cpp
@@ -591,7 +591,7 @@ void ToucheEngine::res_loadSound(int priority, int num) {
 		uint32 size;
 		const uint32 offs = res_getDataOffset(kResourceTypeSound, num, &size);
 		_fData.seek(offs);
-		Audio::AudioStream *stream = Audio::makeVOCStream(&_fData, Audio::FLAG_UNSIGNED);
+		Audio::AudioStream *stream = Audio::makeVOCStream(&_fData, Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
 		if (stream) {
 			_mixer->playStream(Audio::Mixer::kSFXSoundType, &_sfxHandle, stream);
 		}
@@ -649,7 +649,7 @@ void ToucheEngine::res_loadSpeechSegment(int num) {
 				return;
 			}
 			_fSpeech[i].seek(offs);
-			stream = Audio::makeVOCStream(&_fSpeech[i], Audio::FLAG_UNSIGNED);
+			stream = Audio::makeVOCStream(&_fSpeech[i], Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
 		} else {
 			if (num >= 750) {
 				num -= 750;


Commit: d4f54a2c97ca5bff03846eca09882b17e0c3a3fa
    https://github.com/scummvm/scummvm/commit/d4f54a2c97ca5bff03846eca09882b17e0c3a3fa
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2011-10-09T12:24:00-07:00

Commit Message:
AUDIO: Strip out some unused VOC code.

Changed paths:
    audio/decoders/voc.cpp



diff --git a/audio/decoders/voc.cpp b/audio/decoders/voc.cpp
index c5023f8..f06e7f9 100644
--- a/audio/decoders/voc.cpp
+++ b/audio/decoders/voc.cpp
@@ -47,7 +47,7 @@ int getSampleRateFromVOCRate(int vocSR) {
 	}
 }
 
-static byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate, int &loops, int &begin_loop, int &end_loop) {
+byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate) {
 	VocFileHeader fileHeader;
 
 	debug(2, "loadVOCFromStream");
@@ -84,8 +84,6 @@ static byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate,
 	int len;
 	byte *ret_sound = 0;
 	size = 0;
-	begin_loop = 0;
-	end_loop = 0;
 
 	while ((code = stream.readByte())) {
 		len = stream.readByte();
@@ -128,8 +126,6 @@ static byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate,
 				}
 				stream.read(ret_sound + size, len);
 				size += len;
-				begin_loop = size;
-				end_loop = size;
 			} else {
 				warning("VOC file packing %d unsupported", packing);
 			}
@@ -144,7 +140,7 @@ static byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate,
 			break;
 		case 6:	// begin of loop
 			assert(len == 2);
-			loops = stream.readUint16LE();
+			stream.readUint16LE();
 			break;
 		case 7:	// end of loop
 			assert(len == 0);
@@ -173,15 +169,9 @@ static byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate,
 	return ret_sound;
 }
 
-byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate) {
-	int loops, begin_loop, end_loop;
-	return loadVOCFromStream(stream, size, rate, loops, begin_loop, end_loop);
-}
-
-
 #ifdef STREAM_AUDIO_FROM_DISK
 
-int parseVOCFormat(Common::SeekableReadStream& stream, RawStreamBlock* block, int &rate, int &loops, int &begin_loop, int &end_loop) {
+int parseVOCFormat(Common::SeekableReadStream& stream, RawStreamBlock* block, int &rate) {
 	VocFileHeader fileHeader;
 	int currentBlock = 0;
 	int size = 0;
@@ -219,8 +209,6 @@ int parseVOCFormat(Common::SeekableReadStream& stream, RawStreamBlock* block, in
 
 	int len;
 	size = 0;
-	begin_loop = 0;
-	end_loop = 0;
 
 	while ((code = stream.readByte())) {
 		len = stream.readByte();
@@ -261,8 +249,6 @@ int parseVOCFormat(Common::SeekableReadStream& stream, RawStreamBlock* block, in
 				stream.seek(len, SEEK_CUR);
 
 				size += len;
-				begin_loop = size;
-				end_loop = size;
 			} else {
 				warning("VOC file packing %d unsupported", packing);
 			}
@@ -277,7 +263,7 @@ int parseVOCFormat(Common::SeekableReadStream& stream, RawStreamBlock* block, in
 			break;
 		case 6:	// begin of loop
 			assert(len == 2);
-			loops = stream.readUint16LE();
+			stream.readUint16LE();
 			break;
 		case 7:	// end of loop
 			assert(len == 0);
@@ -304,9 +290,9 @@ SeekableAudioStream *makeVOCDiskStreamNoLoop(Common::SeekableReadStream *stream,
 	const int MAX_AUDIO_BLOCKS = 256;
 
 	RawStreamBlock *block = new RawStreamBlock[MAX_AUDIO_BLOCKS];
-	int rate, loops, begin_loop, end_loop;
+	int rate;
 
-	int numBlocks = parseVOCFormat(*stream, block, rate, loops, begin_loop, end_loop);
+	int numBlocks = parseVOCFormat(*stream, block, rate);
 
 	SeekableAudioStream *audioStream = 0;
 


Commit: 3e1405b939014252611696f7f298b8af58af9786
    https://github.com/scummvm/scummvm/commit/3e1405b939014252611696f7f298b8af58af9786
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2011-10-09T12:24:06-07:00

Commit Message:
AUDIO: Add default disposeAfterUse value to makeVOCStream again.

Changed paths:
    audio/decoders/voc.h
    engines/agos/sound.cpp
    engines/scumm/sound.cpp
    engines/touche/resource.cpp



diff --git a/audio/decoders/voc.h b/audio/decoders/voc.h
index 335a66e..0c2d3b1 100644
--- a/audio/decoders/voc.h
+++ b/audio/decoders/voc.h
@@ -94,7 +94,7 @@ extern byte *loadVOCFromStream(Common::ReadStream &stream, int &size, int &rate)
  *
  * This does not use any of the looping features of VOC files!
  */
-SeekableAudioStream *makeVOCStream(Common::SeekableReadStream *stream, byte flags, DisposeAfterUse::Flag disposeAfterUse);
+SeekableAudioStream *makeVOCStream(Common::SeekableReadStream *stream, byte flags, DisposeAfterUse::Flag disposeAfterUse = DisposeAfterUse::NO);
 
 } // End of namespace Audio
 
diff --git a/engines/agos/sound.cpp b/engines/agos/sound.cpp
index 9145688..11a1cd7 100644
--- a/engines/agos/sound.cpp
+++ b/engines/agos/sound.cpp
@@ -255,7 +255,7 @@ public:
 Audio::AudioStream *VocSound::makeAudioStream(uint sound) {
 	assert(_offsets);
 	_file->seek(_offsets[sound], SEEK_SET);
-	return Audio::makeVOCStream(_file.get(), _flags, DisposeAfterUse::NO);
+	return Audio::makeVOCStream(_file.get(), _flags);
 }
 
 void VocSound::playSound(uint sound, uint loopSound, Audio::Mixer::SoundType type, Audio::SoundHandle *handle, bool loop, int vol) {
diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp
index 1700e68..ba8c6e2 100644
--- a/engines/scumm/sound.cpp
+++ b/engines/scumm/sound.cpp
@@ -628,7 +628,7 @@ void Sound::startTalkSound(uint32 offset, uint32 b, int mode, Audio::SoundHandle
 #endif
 			break;
 		default:
-			input = Audio::makeVOCStream(_sfxFile, Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
+			input = Audio::makeVOCStream(_sfxFile, Audio::FLAG_UNSIGNED);
 			break;
 		}
 
diff --git a/engines/touche/resource.cpp b/engines/touche/resource.cpp
index d87f801..6df6fc0 100644
--- a/engines/touche/resource.cpp
+++ b/engines/touche/resource.cpp
@@ -591,7 +591,7 @@ void ToucheEngine::res_loadSound(int priority, int num) {
 		uint32 size;
 		const uint32 offs = res_getDataOffset(kResourceTypeSound, num, &size);
 		_fData.seek(offs);
-		Audio::AudioStream *stream = Audio::makeVOCStream(&_fData, Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
+		Audio::AudioStream *stream = Audio::makeVOCStream(&_fData, Audio::FLAG_UNSIGNED);
 		if (stream) {
 			_mixer->playStream(Audio::Mixer::kSFXSoundType, &_sfxHandle, stream);
 		}
@@ -649,7 +649,7 @@ void ToucheEngine::res_loadSpeechSegment(int num) {
 				return;
 			}
 			_fSpeech[i].seek(offs);
-			stream = Audio::makeVOCStream(&_fSpeech[i], Audio::FLAG_UNSIGNED, DisposeAfterUse::NO);
+			stream = Audio::makeVOCStream(&_fSpeech[i], Audio::FLAG_UNSIGNED);
 		} else {
 			if (num >= 750) {
 				num -= 750;






More information about the Scummvm-git-logs mailing list