[Scummvm-cvs-logs] SF.net SVN: scummvm: [25843] scummvm/trunk/engines/scumm/smush

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Sun Feb 25 01:12:12 CET 2007


Revision: 25843
          http://scummvm.svn.sourceforge.net/scummvm/?rev=25843&view=rev
Author:   fingolfin
Date:     2007-02-24 16:12:11 -0800 (Sat, 24 Feb 2007)

Log Message:
-----------
Another Ogg > MP3 consistency reordering, this time in the SMUSH code; also changed it to use the new compressed audio stream factories

Modified Paths:
--------------
    scummvm/trunk/engines/scumm/smush/smush_player.cpp
    scummvm/trunk/engines/scumm/smush/smush_player.h

Modified: scummvm/trunk/engines/scumm/smush/smush_player.cpp
===================================================================
--- scummvm/trunk/engines/scumm/smush/smush_player.cpp	2007-02-25 00:09:22 UTC (rev 25842)
+++ scummvm/trunk/engines/scumm/smush/smush_player.cpp	2007-02-25 00:12:11 UTC (rev 25843)
@@ -1180,10 +1180,8 @@
 }
 
 void SmushPlayer::tryCmpFile(const char *filename) {
-	if (_compressedFile.isOpen()) {
-		_vm->_mixer->stopHandle(_compressedFileSoundHandle);
-		_compressedFile.close();
-	}
+	_vm->_mixer->stopHandle(_compressedFileSoundHandle);
+
 	_compressedFileMode = false;
 	const char *i = strrchr(filename, '.');
 	if (i == NULL) {
@@ -1192,28 +1190,26 @@
 #if defined(USE_MAD) || defined(USE_VORBIS)
 	char fname[260];
 #endif
-#ifdef USE_MAD
+	Common::File *file = new Common::File();
+#ifdef USE_VORBIS
 	memcpy(fname, filename, i - filename);
-	strcpy(fname + (i - filename), ".mp3");
-	_compressedFile.open(fname);
-	if (_compressedFile.isOpen()) {
-		int size = _compressedFile.size();
+	strcpy(fname + (i - filename), ".ogg");
+	if (file->open(fname)) {
 		_compressedFileMode = true;
-		_vm->_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_compressedFileSoundHandle, Audio::makeMP3Stream(&_compressedFile, size));
+		_vm->_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_compressedFileSoundHandle, Audio::makeVorbisStream(file, true, 0, 0));
 		return;
 	}
 #endif
-#ifdef USE_VORBIS
+#ifdef USE_MAD
 	memcpy(fname, filename, i - filename);
-	strcpy(fname + (i - filename), ".ogg");
-	_compressedFile.open(fname);
-	if (_compressedFile.isOpen()) {
-		int size = _compressedFile.size();
+	strcpy(fname + (i - filename), ".mp3");
+	if (file->open(fname)) {
 		_compressedFileMode = true;
-		_vm->_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_compressedFileSoundHandle, Audio::makeVorbisStream(&_compressedFile, size));
+		_vm->_mixer->playInputStream(Audio::Mixer::kSFXSoundType, &_compressedFileSoundHandle, Audio::makeMP3Stream(file, true, 0, 0));
 		return;
 	}
 #endif
+	delete file;
 }
 
 void SmushPlayer::pause() {

Modified: scummvm/trunk/engines/scumm/smush/smush_player.h
===================================================================
--- scummvm/trunk/engines/scumm/smush/smush_player.h	2007-02-25 00:09:22 UTC (rev 25842)
+++ scummvm/trunk/engines/scumm/smush/smush_player.h	2007-02-25 00:12:11 UTC (rev 25843)
@@ -66,7 +66,6 @@
 
 	Audio::SoundHandle _compressedFileSoundHandle;
 	bool _compressedFileMode;
-	Common::File _compressedFile;
 	byte _IACToutput[4096];
 	int32 _IACTpos;
 	bool _storeFrame;


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