diff options
author | Paul Gilbert | 2011-08-12 21:33:45 +1000 |
---|---|---|
committer | Paul Gilbert | 2011-08-12 21:33:45 +1000 |
commit | b76c0af2f4fe9cafeafdde70867e159e076b2752 (patch) | |
tree | 49decc9da9eaa6a73579baf6820bbb5e0e06a297 /engines/cge/sound.h | |
parent | f1f1d8bde084b44756480c7b724f356562ca02b1 (diff) | |
download | scummvm-rg350-b76c0af2f4fe9cafeafdde70867e159e076b2752.tar.gz scummvm-rg350-b76c0af2f4fe9cafeafdde70867e159e076b2752.tar.bz2 scummvm-rg350-b76c0af2f4fe9cafeafdde70867e159e076b2752.zip |
CGE: Work on implementing MIDI music playback.
Music playback is now sort of working, but it seems like only a beat track of the MIDI is getting played
Diffstat (limited to 'engines/cge/sound.h')
-rw-r--r-- | engines/cge/sound.h | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/engines/cge/sound.h b/engines/cge/sound.h index 67b16fc888..9f7d20957e 100644 --- a/engines/cge/sound.h +++ b/engines/cge/sound.h @@ -30,14 +30,19 @@ #include "cge/wav.h" #include "cge/snddrv.h" -#include "cge/cge.h" #include "audio/audiostream.h" #include "audio/decoders/wave.h" #include "audio/fmopl.h" +#include "audio/mididrv.h" +#include "audio/midiparser.h" +#include "audio/midiplayer.h" #include "audio/mixer.h" +#include "common/memstream.h" namespace CGE { +class CGEEngine; + class Sound { public: SmpInfo _smpinf; @@ -74,8 +79,25 @@ public: DataCk *operator[](int ref); }; -void loadMidi(int ref); -void killMidi(); +class MusicPlayer { +private: + MidiDriver *_driver; + MidiParser *_midiParser; + byte *_data; + int _dataSize; + + // Start MIDI File + void sndMidiStart(); + + // Stop MIDI File + void sndMidiStop(); +public: + MusicPlayer(); + ~MusicPlayer(); + + void loadMidi(int ref); + void killMidi(); +}; } // End of namespace CGE |