aboutsummaryrefslogtreecommitdiff
path: root/graphics/video/coktel_decoder.h
diff options
context:
space:
mode:
authorSven Hesse2010-08-08 00:36:19 +0000
committerSven Hesse2010-08-08 00:36:19 +0000
commit167c6e8787811910d2e62393231dc98f14d70d15 (patch)
treecc51a02cea4367998dfc72e1eb4677c8f2c13ec5 /graphics/video/coktel_decoder.h
parent59b9b3bc2bd1c057a6b0f56d2b49a46ff37e00b6 (diff)
downloadscummvm-rg350-167c6e8787811910d2e62393231dc98f14d70d15.tar.gz
scummvm-rg350-167c6e8787811910d2e62393231dc98f14d70d15.tar.bz2
scummvm-rg350-167c6e8787811910d2e62393231dc98f14d70d15.zip
VIDEO: Bare PreIMD decoding
Implemented bare PreIMD decoding using the new CoktelDecoder interface. No fancy stuff yet, only basic vieo frames. svn-id: r51854
Diffstat (limited to 'graphics/video/coktel_decoder.h')
-rw-r--r--graphics/video/coktel_decoder.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/graphics/video/coktel_decoder.h b/graphics/video/coktel_decoder.h
index acbd533c00..b354a5cd9d 100644
--- a/graphics/video/coktel_decoder.h
+++ b/graphics/video/coktel_decoder.h
@@ -62,7 +62,7 @@ public:
Audio::Mixer::SoundType soundType = Audio::Mixer::kPlainSoundType);
~CoktelDecoder();
- virtual bool seek(uint32 frame, int whence = SEEK_SET, bool restart = false) = 0;
+ virtual bool seek(int32 frame, int whence = SEEK_SET, bool restart = false) = 0;
// VideoDecoder interface
@@ -98,7 +98,7 @@ public:
Audio::Mixer::SoundType soundType = Audio::Mixer::kPlainSoundType);
~PreIMDDecoder();
- bool seek(uint32 frame, int whence = SEEK_SET, bool restart = false);
+ bool seek(int32 frame, int whence = SEEK_SET, bool restart = false);
// VideoDecoder interface
@@ -110,6 +110,17 @@ public:
Surface *decodeNextFrame();
PixelFormat getPixelFormat() const;
+
+private:
+ Common::SeekableReadStream *_stream;
+
+ byte *_videoBuffer;
+ uint32 _videoBufferSize;
+
+ Surface _surface;
+
+ void processFrame();
+ void renderFrame();
};
} // End of namespace Graphics