aboutsummaryrefslogtreecommitdiff
path: root/video/avi_decoder.h
diff options
context:
space:
mode:
Diffstat (limited to 'video/avi_decoder.h')
-rw-r--r--video/avi_decoder.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/video/avi_decoder.h b/video/avi_decoder.h
index 8941ff4e75..96d9e821ff 100644
--- a/video/avi_decoder.h
+++ b/video/avi_decoder.h
@@ -32,7 +32,8 @@
#include "audio/mixer.h"
namespace Audio {
-class QueuingAudioStream;
+class AudioStream;
+class PacketizedAudioStream;
}
namespace Common {
@@ -179,11 +180,14 @@ protected:
int getCurFrame() const { return _curFrame; }
int getFrameCount() const { return _frameCount; }
const Graphics::Surface *decodeNextFrame() { return _lastFrame; }
- const byte *getPalette() const { _dirtyPalette = false; return _palette; }
- bool hasDirtyPalette() const { return _dirtyPalette; }
+
+ const byte *getPalette() const;
+ bool hasDirtyPalette() const;
void setCurFrame(int frame) { _curFrame = frame; }
void loadPaletteFromChunk(Common::SeekableReadStream *chunk);
void useInitialPalette();
+ bool canDither() const;
+ void setDither(const byte *palette);
bool isTruemotion1() const;
void forceDimensions(uint16 width, uint16 height);
@@ -212,6 +216,7 @@ protected:
AVIAudioTrack(const AVIStreamHeader &streamHeader, const PCMWaveFormat &waveFormat, Audio::Mixer::SoundType soundType);
~AVIAudioTrack();
+ virtual void createAudioStream();
virtual void queueSound(Common::SeekableReadStream *stream);
Audio::Mixer::SoundType getSoundType() const { return _soundType; }
void skipAudio(const Audio::Timestamp &time, const Audio::Timestamp &frameTime);
@@ -223,7 +228,7 @@ protected:
bool rewind();
protected:
- Audio::AudioStream *getAudioStream() const;
+ Audio::AudioStream *getAudioStream() const { return _audioStream; }
// Audio Codecs
enum {
@@ -238,8 +243,8 @@ protected:
AVIStreamHeader _audsHeader;
PCMWaveFormat _wvInfo;
Audio::Mixer::SoundType _soundType;
- Audio::QueuingAudioStream *_audStream;
- Audio::QueuingAudioStream *createAudioStream();
+ Audio::AudioStream *_audioStream;
+ Audio::PacketizedAudioStream *_packetStream;
uint32 _curChunk;
};