diff options
Diffstat (limited to 'video/qt_decoder.h')
-rw-r--r-- | video/qt_decoder.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/video/qt_decoder.h b/video/qt_decoder.h index 7e87d21ae7..5a6c5eebec 100644 --- a/video/qt_decoder.h +++ b/video/qt_decoder.h @@ -136,10 +136,12 @@ private: int getFrameCount() const; uint32 getNextFrameStartTime() const; const Graphics::Surface *decodeNextFrame(); - const byte *getPalette() const { _dirtyPalette = false; return _curPalette; } + const byte *getPalette() const; bool hasDirtyPalette() const { return _curPalette; } bool setReverse(bool reverse); bool isReversed() const { return _reversed; } + bool canDither() const; + void setDither(const byte *palette); Common::Rational getScaledWidth() const; Common::Rational getScaledHeight() const; @@ -151,12 +153,17 @@ private: int32 _curFrame; uint32 _nextFrameStartTime; Graphics::Surface *_scaledSurface; - bool _holdNextFrameStartTime; int32 _durationOverride; const byte *_curPalette; mutable bool _dirtyPalette; bool _reversed; + // Forced dithering of frames + byte *_forcedDitherPalette; + byte *_ditherTable; + Graphics::Surface *_ditherFrame; + const Graphics::Surface *forceDither(const Graphics::Surface &frame); + Common::SeekableReadStream *getNextFramePacket(uint32 &descId); uint32 getFrameDuration(); uint32 findKeyFrame(uint32 frame) const; @@ -166,6 +173,7 @@ private: uint32 getCurEditTimeOffset() const; uint32 getCurEditTrackDuration() const; bool atLastEdit() const; + bool endOfCurEdit() const; }; }; |