[Scummvm-cvs-logs] SF.net SVN: scummvm:[43460] scummvm/trunk/engines/saga/sound.cpp

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Mon Aug 17 11:19:53 CEST 2009


Revision: 43460
          http://scummvm.svn.sourceforge.net/scummvm/?rev=43460&view=rev
Author:   thebluegr
Date:     2009-08-17 09:19:53 +0000 (Mon, 17 Aug 2009)

Log Message:
-----------
Cleanup

Modified Paths:
--------------
    scummvm/trunk/engines/saga/sound.cpp

Modified: scummvm/trunk/engines/saga/sound.cpp
===================================================================
--- scummvm/trunk/engines/saga/sound.cpp	2009-08-17 07:36:08 UTC (rev 43459)
+++ scummvm/trunk/engines/saga/sound.cpp	2009-08-17 09:19:53 UTC (rev 43460)
@@ -92,36 +92,24 @@
 					buffer.size, buffer.frequency, flags, -1, volume);
 	} else {
 		Audio::AudioStream *stream = NULL;
-#if defined(USE_MAD) || defined(USE_VORBIS) || defined(USE_FLAC)
-		MemoryReadStream *tmp = NULL;
-#endif
+		Common::SeekableSubReadStream *soundStream = 
+				new Common::SeekableSubReadStream(buffer.soundFile, (uint32)buffer.fileOffset + 9, 
+				(uint32)buffer.fileOffset + buffer.size - 9);
 
 		switch (buffer.soundType) {
 #ifdef USE_MAD
 			case kSoundMP3:
-				debug(1, "Playing MP3 compressed sound");
-				buffer.soundFile->seek((long)buffer.fileOffset, SEEK_SET);
-				tmp = buffer.soundFile->readStream(buffer.size);
-				assert(tmp);
-				stream = Audio::makeMP3Stream(tmp, true);
+				stream = Audio::makeMP3Stream(soundStream, true);
 				break;
 #endif
 #ifdef USE_VORBIS
 			case kSoundOGG:
-				debug(1, "Playing OGG compressed sound");
-				buffer.soundFile->seek((long)buffer.fileOffset, SEEK_SET);
-				tmp = buffer.soundFile->readStream(buffer.size);
-				assert(tmp);
-				stream = Audio::makeVorbisStream(tmp, true);
+				stream = Audio::makeVorbisStream(soundStream, true);
 				break;
 #endif
 #ifdef USE_FLAC
 			case kSoundFLAC:
-				debug(1, "Playing FLAC compressed sound");
-				buffer.soundFile->seek((long)buffer.fileOffset, SEEK_SET);
-				tmp = buffer.soundFile->readStream(buffer.size);
-				assert(tmp);
-				stream = Audio::makeFlacStream(tmp, true);
+				stream = Audio::makeFlacStream(soundStream, true);
 				break;
 #endif
 			default:


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list