ScummVM API documentation
Video::AVIDecoder::AVIVideoTrack Class Reference
Inheritance diagram for Video::AVIDecoder::AVIVideoTrack:
Video::VideoDecoder::FixedRateVideoTrack Video::VideoDecoder::VideoTrack Video::VideoDecoder::Track

Public Member Functions

 AVIVideoTrack (int frameCount, const AVIStreamHeader &streamHeader, const BitmapInfoHeader &bitmapInfoHeader, byte *initialPalette=0)
 
void decodeFrame (Common::SeekableReadStream *stream)
 
void forceTrackEnd ()
 
uint16 getWidth () const
 
uint16 getHeight () const
 
uint16 getBitCount () const
 
Graphics::PixelFormat getPixelFormat () const
 
bool setOutputPixelFormat (const Graphics::PixelFormat &format)
 
int getCurFrame () const
 
int getFrameCount () const
 
Common::StringgetName ()
 
const Graphics::SurfacedecodeNextFrame ()
 
const byte * getPalette () const
 
bool hasDirtyPalette () const
 
void setCurFrame (int frame)
 
void loadPaletteFromChunk (Common::SeekableReadStream *chunk)
 
void loadPaletteFromChunkRaw (Common::SeekableReadStream *chunk, int firstEntry, int numEntries)
 
void useInitialPalette ()
 
bool canDither () const
 
void setDither (const byte *palette)
 
bool isValid () const
 
bool isTruemotion1 () const
 
void forceDimensions (uint16 width, uint16 height)
 
bool isRewindable () const
 
bool rewind ()
 
virtual bool setReverse (bool reverse)
 
virtual bool isReversed () const
 
virtual bool endOfTrack () const
 
Common::Rational getFrameRate () const
 
void setFrameRate (const Common::Rational &r)
 
- Public Member Functions inherited from Video::VideoDecoder::FixedRateVideoTrack
uint32 getNextFrameStartTime () const
 
virtual Audio::Timestamp getDuration () const
 
Audio::Timestamp getFrameTime (uint frame) const
 
uint getFrameAtTime (const Audio::Timestamp &time) const
 
- Public Member Functions inherited from Video::VideoDecoder::VideoTrack
TrackType getTrackType () const
 
- Public Member Functions inherited from Video::VideoDecoder::Track
virtual bool isSeekable () const
 
virtual bool seek (const Audio::Timestamp &time)
 
void pause (bool shouldPause)
 
bool isPaused () const
 

Additional Inherited Members

- Public Types inherited from Video::VideoDecoder::Track
enum  TrackType { kTrackTypeNone, kTrackTypeVideo, kTrackTypeAudio }
 
- Protected Member Functions inherited from Video::VideoDecoder::Track
virtual void pauseIntern (bool shouldPause)
 

Member Function Documentation

◆ getWidth()

uint16 Video::AVIDecoder::AVIVideoTrack::getWidth ( ) const
inlinevirtual

Get the width of this track

Implements Video::VideoDecoder::VideoTrack.

◆ getHeight()

uint16 Video::AVIDecoder::AVIVideoTrack::getHeight ( ) const
inlinevirtual

Get the height of this track

Implements Video::VideoDecoder::VideoTrack.

◆ getPixelFormat()

Graphics::PixelFormat Video::AVIDecoder::AVIVideoTrack::getPixelFormat ( ) const
virtual

Get the pixel format of this track

Implements Video::VideoDecoder::VideoTrack.

◆ setOutputPixelFormat()

bool Video::AVIDecoder::AVIVideoTrack::setOutputPixelFormat ( const Graphics::PixelFormat format)
virtual

Set the default high color format for videos that convert from YUV.

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ getCurFrame()

int Video::AVIDecoder::AVIVideoTrack::getCurFrame ( ) const
inlinevirtual

Get the current frame of this track

See also
VideoDecoder::getCurFrame()

Implements Video::VideoDecoder::VideoTrack.

◆ getFrameCount()

int Video::AVIDecoder::AVIVideoTrack::getFrameCount ( ) const
inlinevirtual

Get the frame count of this track

Note
If the frame count is unknown, return 0 (which is also the default implementation of the function). However, one must also implement endOfTrack() in that case.

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ decodeNextFrame()

const Graphics::Surface* Video::AVIDecoder::AVIVideoTrack::decodeNextFrame ( )
inlinevirtual

Decode the next frame

Implements Video::VideoDecoder::VideoTrack.

◆ getPalette()

const byte* Video::AVIDecoder::AVIVideoTrack::getPalette ( ) const
virtual

Get the palette currently in use by this track

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ hasDirtyPalette()

bool Video::AVIDecoder::AVIVideoTrack::hasDirtyPalette ( ) const
virtual

Does the palette currently in use by this track need to be updated?

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ canDither()

bool Video::AVIDecoder::AVIVideoTrack::canDither ( ) const
virtual

Can the video track dither?

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ setDither()

void Video::AVIDecoder::AVIVideoTrack::setDither ( const byte *  palette)
virtual

Activate dithering mode with a palette

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ isRewindable()

bool Video::AVIDecoder::AVIVideoTrack::isRewindable ( ) const
inlinevirtual

Return if the track is rewindable.

If a video is seekable, it does not need to implement this for it to also be rewindable.

Reimplemented from Video::VideoDecoder::Track.

◆ rewind()

bool Video::AVIDecoder::AVIVideoTrack::rewind ( )
virtual

Rewind the video to the beginning.

If a video is seekable, it does not need to implement this for it to also be rewindable.

Returns
true on success, false otherwise.

Reimplemented from Video::VideoDecoder::Track.

◆ setReverse()

virtual bool Video::AVIDecoder::AVIVideoTrack::setReverse ( bool  reverse)
virtual

Set the video track to play in reverse or forward.

By default, a VideoTrack must decode forward.

Parameters
reversetrue for reverse, false for forward
Returns
true for success, false for failure

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ isReversed()

virtual bool Video::AVIDecoder::AVIVideoTrack::isReversed ( ) const
inlinevirtual

Is the video track set to play in reverse?

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ endOfTrack()

virtual bool Video::AVIDecoder::AVIVideoTrack::endOfTrack ( ) const
virtual

Returns true if at the end of the video track

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ getFrameRate()

Common::Rational Video::AVIDecoder::AVIVideoTrack::getFrameRate ( ) const
inlinevirtual

Get track frame rate

Implements Video::VideoDecoder::FixedRateVideoTrack.

◆ setFrameRate()

void Video::AVIDecoder::AVIVideoTrack::setFrameRate ( const Common::Rational r)
inline

Force sets a new frame rate


The documentation for this class was generated from the following file: