diff options
author | Martin Kiewitz | 2015-06-03 19:47:01 +0200 |
---|---|---|
committer | Martin Kiewitz | 2015-06-03 19:47:01 +0200 |
commit | 626244394a6a54a5ffb2ac6ef0b3a578ee1c3cc9 (patch) | |
tree | 0aa6a8b8f717fbb1814eefa7c16434404e902b2b /engines/sherlock/scalpel/3do/movie_decoder.h | |
parent | 08b81e38f3df177d67cf290b07b2bc4b041dfc34 (diff) | |
download | scummvm-rg350-626244394a6a54a5ffb2ac6ef0b3a578ee1c3cc9.tar.gz scummvm-rg350-626244394a6a54a5ffb2ac6ef0b3a578ee1c3cc9.tar.bz2 scummvm-rg350-626244394a6a54a5ffb2ac6ef0b3a578ee1c3cc9.zip |
SHERLOCK: 3do movie player non-FFR thx clone2727
sherlock seems to only use a fixed frame rate
but we now support dynamic frame rate timing
Diffstat (limited to 'engines/sherlock/scalpel/3do/movie_decoder.h')
-rw-r--r-- | engines/sherlock/scalpel/3do/movie_decoder.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/engines/sherlock/scalpel/3do/movie_decoder.h b/engines/sherlock/scalpel/3do/movie_decoder.h index 6ee41693eb..be5a834414 100644 --- a/engines/sherlock/scalpel/3do/movie_decoder.h +++ b/engines/sherlock/scalpel/3do/movie_decoder.h @@ -51,31 +51,32 @@ protected: void readNextPacket(); private: - class StreamVideoTrack : public FixedRateVideoTrack { + class StreamVideoTrack : public VideoTrack { public: - StreamVideoTrack(uint32 width, uint32 height, uint32 codecTag, uint32 frameCount, uint32 frameRate); + StreamVideoTrack(uint32 width, uint32 height, uint32 codecTag, uint32 frameCount); ~StreamVideoTrack(); + bool endOfTrack() const; + uint16 getWidth() const { return _width; } uint16 getHeight() const { return _height; } Graphics::PixelFormat getPixelFormat() const; int getCurFrame() const { return _curFrame; } int getFrameCount() const { return _frameCount; } + uint32 getNextFrameStartTime() const { return _nextFrameStartTime; } const Graphics::Surface *decodeNextFrame() { return _surface; } - void decodeFrame(Common::SeekableReadStream *stream); - - protected: - Common::Rational getFrameRate() const { return _frameRate; } + void decodeFrame(Common::SeekableReadStream *stream, uint32 videoTimeStamp); private: const Graphics::Surface *_surface; - uint32 _frameRate; + int _curFrame; uint32 _frameCount; + uint32 _nextFrameStartTime; + Image::Codec *_codec; uint16 _width, _height; - int _curFrame; }; class StreamAudioTrack : public AudioTrack { |