ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

Decoder for Theora videos. More...

#include <theora_decoder.h>

Inheritance diagram for Video::TheoraDecoder:
Collaboration diagram for Video::TheoraDecoder:

List of all members.

Classes

class  TheoraVideoTrack
class  VorbisAudioTrack

Public Member Functions

 TheoraDecoder ()
virtual ~TheoraDecoder ()
bool loadStream (Common::SeekableReadStream *stream)
 Load a video file.
void close ()
 Close the active video stream and free any associated resources.

Protected Member Functions

void readNextPacket ()
 Decode enough data for the next frame and enough audio to last that long.

Private Member Functions

void queuePage (ogg_page *page)
int bufferData ()
bool queueAudio ()
void ensureAudioBufferSize ()

Private Attributes

Common::SeekableReadStream_fileStream
ogg_sync_state _oggSync
ogg_page _oggPage
ogg_packet _oggPacket
ogg_stream_state _theoraOut
ogg_stream_state _vorbisOut
bool _hasVideo
bool _hasAudio
vorbis_info _vorbisInfo
TheoraVideoTrack_videoTrack
VorbisAudioTrack_audioTrack

Detailed Description

Decoder for Theora videos.

Video decoder used in engines:

  • pegasus
  • sword25
  • wintermute

Definition at line 62 of file theora_decoder.h.


Constructor & Destructor Documentation

Video::TheoraDecoder::TheoraDecoder (  ) 

Definition at line 50 of file theora_decoder.cpp.

Video::TheoraDecoder::~TheoraDecoder (  )  [virtual]

Definition at line 58 of file theora_decoder.cpp.


Member Function Documentation

int Video::TheoraDecoder::bufferData (  )  [private]

Definition at line 440 of file theora_decoder.cpp.

void Video::TheoraDecoder::close (  )  [virtual]

Close the active video stream and free any associated resources.

All subclasses that need to close their own resources should still call the base class' close() function at the start of their function.

Reimplemented from Video::VideoDecoder.

Definition at line 200 of file theora_decoder.cpp.

void Video::TheoraDecoder::ensureAudioBufferSize (  )  [private]

Definition at line 471 of file theora_decoder.cpp.

bool Video::TheoraDecoder::loadStream ( Common::SeekableReadStream stream  )  [virtual]

Load a video file.

Parameters:
stream the stream to load

Implements Video::VideoDecoder.

Definition at line 62 of file theora_decoder.cpp.

bool Video::TheoraDecoder::queueAudio (  )  [private]

Definition at line 449 of file theora_decoder.cpp.

void Video::TheoraDecoder::queuePage ( ogg_page *  page  )  [private]

Definition at line 432 of file theora_decoder.cpp.

void Video::TheoraDecoder::readNextPacket (  )  [protected, virtual]

Decode enough data for the next frame and enough audio to last that long.

This function is used by this class' decodeNextFrame() function. A subclass of a Track may decide to just have its decodeNextFrame() function read and decode the frame, but only if it is the only track in the video.

Reimplemented from Video::VideoDecoder.

Definition at line 225 of file theora_decoder.cpp.


Member Data Documentation

Definition at line 147 of file theora_decoder.h.

Definition at line 147 of file theora_decoder.h.

ogg_packet Video::TheoraDecoder::_oggPacket [private]

Definition at line 144 of file theora_decoder.h.

ogg_page Video::TheoraDecoder::_oggPage [private]

Definition at line 143 of file theora_decoder.h.

ogg_sync_state Video::TheoraDecoder::_oggSync [private]

Definition at line 142 of file theora_decoder.h.

ogg_stream_state Video::TheoraDecoder::_theoraOut [private]

Definition at line 146 of file theora_decoder.h.

vorbis_info Video::TheoraDecoder::_vorbisInfo [private]

Definition at line 149 of file theora_decoder.h.

ogg_stream_state Video::TheoraDecoder::_vorbisOut [private]

Definition at line 146 of file theora_decoder.h.


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


Generated on Sat Jan 12 2019 05:05:26 for ResidualVM by doxygen 1.7.1
curved edge   curved edge