From af59f33b7b7646e299b053b8d46a25e49615f26b Mon Sep 17 00:00:00 2001 From: Matthew Hoops Date: Thu, 7 Apr 2011 10:51:39 -0400 Subject: GROOVIE: Add a stub MPEG4 music player --- engines/groovie/groovie.cpp | 14 ++++++++++++-- engines/groovie/music.cpp | 14 ++++++++++++++ engines/groovie/music.h | 9 +++++++++ 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/engines/groovie/groovie.cpp b/engines/groovie/groovie.cpp index 313a690aea..47070cc086 100644 --- a/engines/groovie/groovie.cpp +++ b/engines/groovie/groovie.cpp @@ -151,10 +151,20 @@ Common::Error GroovieEngine::run() { } // Create the music player - if (getPlatform() == Common::kPlatformMacintosh) + switch (getPlatform()) { + case Common::kPlatformMacintosh: + // TODO: The 11th Hour Mac uses QuickTime MIDI files + // Right now, since the XMIDI are present and it is still detected as + // the DOS version, we don't have to do anything here. _musicPlayer = new MusicPlayerMac(this); - else + break; + case Common::kPlatformIOS: + _musicPlayer = new MusicPlayerMPEG4(this); + break; + default: _musicPlayer = new MusicPlayerXMI(this, _gameDescription->version == kGroovieT7G ? "fat" : "sample"); + break; + } // Load volume levels syncSoundSettings(); diff --git a/engines/groovie/music.cpp b/engines/groovie/music.cpp index 7529f95bcf..bdb080d204 100644 --- a/engines/groovie/music.cpp +++ b/engines/groovie/music.cpp @@ -747,4 +747,18 @@ Common::SeekableReadStream *MusicPlayerMac::decompressMidi(Common::SeekableReadS return new Common::MemoryReadStream(output, size, DisposeAfterUse::YES); } +MusicPlayerMPEG4::MusicPlayerMPEG4(GroovieEngine *vm) : MusicPlayer(vm) { +} + +void MusicPlayerMPEG4::updateVolume() { + // TODO: Check if anything has to be done here +} + +bool MusicPlayerMPEG4::load(uint32 fileref, bool loop) { + // TODO + Common::String filename = Common::String::format("gu%d.m4a", fileref & 0x3FF); + warning("TODO: Play MPEG-4 sound '%s'", filename.c_str()); + return false; +} + } // End of Groovie namespace diff --git a/engines/groovie/music.h b/engines/groovie/music.h index bde0a7a16f..9855c898fe 100644 --- a/engines/groovie/music.h +++ b/engines/groovie/music.h @@ -160,6 +160,15 @@ private: Common::SeekableReadStream *decompressMidi(Common::SeekableReadStream *stream); }; +class MusicPlayerMPEG4 : public MusicPlayer { +public: + MusicPlayerMPEG4(GroovieEngine *vm); + +protected: + void updateVolume(); + bool load(uint32 fileref, bool loop); +}; + } // End of Groovie namespace #endif // GROOVIE_MUSIC_H -- cgit v1.2.3