VorbisDecoder Class Reference

#include <vorbisdecoder.h>

Inheritance diagram for VorbisDecoder:

Decoder MythObservable

List of all members.


Detailed Description

Definition at line 10 of file vorbisdecoder.h.


Public Member Functions

 VorbisDecoder (const QString &file, DecoderFactory *, QIODevice *, AudioOutput *)
virtual ~VorbisDecoder (void)
bool initialize ()
double lengthInSeconds ()
void seek (double)
void stop ()
MetaIOdoCreateTagger (void)
 Create a MetaIO object for the format.

Private Member Functions

void run ()
void flush (bool=FALSE)
void deinit ()

Private Attributes

bool inited
bool user_stop
int stat
char * output_buf
ulong output_bytes
ulong output_at
OggVorbis_File oggfile
unsigned int bks
bool done
bool finish
long len
long freq
long bitrate
int chan
unsigned long output_size
double totalTime
double seekTime

Constructor & Destructor Documentation

VorbisDecoder::VorbisDecoder ( const QString &  file,
DecoderFactory d,
QIODevice *  i,
AudioOutput o 
)

Definition at line 68 of file vorbisdecoder.cpp.

VorbisDecoder::~VorbisDecoder ( void   )  [virtual]

Definition at line 90 of file vorbisdecoder.cpp.


Member Function Documentation

bool VorbisDecoder::initialize (  )  [virtual]

Implements Decoder.

Definition at line 133 of file vorbisdecoder.cpp.

double VorbisDecoder::lengthInSeconds (  ) 

void VorbisDecoder::seek ( double  pos  )  [virtual]

Implements Decoder.

Definition at line 198 of file vorbisdecoder.cpp.

void VorbisDecoder::stop ( void   )  [virtual]

Implements Decoder.

Definition at line 100 of file vorbisdecoder.cpp.

MetaIO * VorbisDecoder::doCreateTagger ( void   )  [virtual]

Create a MetaIO object for the format.

This method should be overwritten by subclasses to return an instance of the appropriate MetaIO subtype. It is used by Decoder::getMetadata, Decoder::readMetadata and Decoder::commitMetadata.

The default implementation returns a NULL pointer, which essentially means, that if the decoder does not overrider this method or all of the users (see previous paragraph), files that the decoder supports cannot be indexed using metadata in the file.

e.g. the mp3 decoder (MadDecoder) implements this, whereas the audio CD decoder (CdDecoder) does not.

Returns:
an instance of MetaIO owned by the caller

Reimplemented from Decoder.

Definition at line 302 of file vorbisdecoder.cpp.

void VorbisDecoder::run ( void   )  [private]

Definition at line 214 of file vorbisdecoder.cpp.

void VorbisDecoder::flush ( bool  final = FALSE  )  [private]

Definition at line 105 of file vorbisdecoder.cpp.

Referenced by run().

void VorbisDecoder::deinit (  )  [private]

Definition at line 203 of file vorbisdecoder.cpp.

Referenced by run(), and ~VorbisDecoder().


Member Data Documentation

Definition at line 29 of file vorbisdecoder.h.

Referenced by deinit(), flush(), initialize(), run(), VorbisDecoder(), and ~VorbisDecoder().

Definition at line 29 of file vorbisdecoder.h.

Referenced by deinit(), flush(), initialize(), run(), stop(), and VorbisDecoder().

int VorbisDecoder::stat [private]

Definition at line 30 of file vorbisdecoder.h.

Referenced by deinit(), initialize(), run(), and VorbisDecoder().

char* VorbisDecoder::output_buf [private]

Definition at line 31 of file vorbisdecoder.h.

Referenced by flush(), initialize(), run(), VorbisDecoder(), and ~VorbisDecoder().

Definition at line 32 of file vorbisdecoder.h.

Referenced by flush(), initialize(), run(), and VorbisDecoder().

Definition at line 32 of file vorbisdecoder.h.

Referenced by flush(), initialize(), run(), and VorbisDecoder().

OggVorbis_File VorbisDecoder::oggfile [private]

Definition at line 34 of file vorbisdecoder.h.

Referenced by deinit(), initialize(), and run().

unsigned int VorbisDecoder::bks [private]

Definition at line 36 of file vorbisdecoder.h.

Referenced by flush(), initialize(), run(), and VorbisDecoder().

Definition at line 37 of file vorbisdecoder.h.

Referenced by deinit(), flush(), initialize(), run(), and VorbisDecoder().

Definition at line 37 of file vorbisdecoder.h.

Referenced by deinit(), flush(), initialize(), run(), and VorbisDecoder().

long VorbisDecoder::len [private]

Definition at line 38 of file vorbisdecoder.h.

Referenced by deinit(), initialize(), run(), and VorbisDecoder().

long VorbisDecoder::freq [private]

Definition at line 38 of file vorbisdecoder.h.

Referenced by deinit(), initialize(), and VorbisDecoder().

long VorbisDecoder::bitrate [private]

Definition at line 38 of file vorbisdecoder.h.

Referenced by deinit(), initialize(), run(), and VorbisDecoder().

int VorbisDecoder::chan [private]

Definition at line 39 of file vorbisdecoder.h.

Referenced by deinit(), flush(), initialize(), and VorbisDecoder().

unsigned long VorbisDecoder::output_size [private]

Definition at line 40 of file vorbisdecoder.h.

double VorbisDecoder::totalTime [private]

Definition at line 41 of file vorbisdecoder.h.

Referenced by initialize(), and VorbisDecoder().

double VorbisDecoder::seekTime [private]

Definition at line 41 of file vorbisdecoder.h.

Referenced by initialize(), run(), seek(), and VorbisDecoder().


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

Generated on Sat Dec 18 05:16:14 2010 for MythTV by  doxygen 1.5.5