22#ifndef VIDEO_PACODECODER_H
23#define VIDEO_PACODECODER_H
25#include "audio/audiostream.h"
26#include "common/list.h"
27#include "common/rect.h"
28#include "graphics/palette.h"
29#include "video/video_decoder.h"
32class SeekableReadStream;
33class SafeSeekableSubReadStream;
58 void clearDirtyRects();
59 void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
60 const byte *getPalette();
68 uint16 frameRate, uint16 frameCount, uint16 width, uint16 height);
81 virtual void handleEOC() { _curFrame += 1; };
87 void clearDirtyRects() { _dirtyRects.
clear(); }
88 void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
95 mutable bool _dirtyPalette;
109 bool needsAudio()
const;
120 PacoVideoTrack *_videoTrack;
121 PacoAudioTrack *_audioTrack;
126 int _frameSizes[65536];
127 int getAudioSamplingRate();
Definition: audiostream.h:50
Definition: audiostream.h:471
void clear()
Definition: list.h:245
Definition: rational.h:40
Definition: substream.h:104
Simple class for handling a palette data.
Definition: palette.h:61
Definition: paco_decoder.h:104
Audio::AudioStream * getAudioStream() const override
Definition: paco_decoder.h:112
Definition: paco_decoder.h:65
int getFrameCount() const override
Definition: paco_decoder.h:78
Common::Rational getFrameRate() const override
Definition: paco_decoder.h:89
uint16 getWidth() const override
bool isRewindable() const override
Definition: paco_decoder.h:72
Graphics::PixelFormat getPixelFormat() const override
const byte * getPalette() const override
int getCurFrame() const override
Definition: paco_decoder.h:77
uint16 getHeight() const override
bool endOfTrack() const override
bool hasDirtyPalette() const override
Definition: paco_decoder.h:84
const Graphics::Surface * decodeNextFrame() override
Definition: paco_decoder.h:49
bool loadStream(Common::SeekableReadStream *stream) override
void readNextPacket() override
Definition: video_decoder.h:759
Definition: video_decoder.h:734
Definition: video_decoder.h:53
Definition: algorithm.h:29
Definition: formatinfo.h:28