Qmmp
Public Member Functions | Static Public Member Functions | Protected Member Functions
Output Class Reference

#include <output.h>

List of all members.

Public Member Functions

 Output ()
virtual ~Output ()
virtual bool initialize (quint32 freq, int chan, Qmmp::AudioFormat format)=0
virtual qint64 latency ()=0
virtual qint64 writeAudio (unsigned char *data, qint64 maxSize)=0
virtual void drain ()=0
virtual void reset ()=0
virtual void suspend ()
virtual void resume ()
AudioParameters audioParameters () const
quint32 sampleRate ()
int channels ()
Qmmp::AudioFormat format () const
int sampleSize () const

Static Public Member Functions

static Outputcreate ()
static QList< OutputFactory * > factories ()
static QString file (OutputFactory *factory)
static void setCurrentFactory (OutputFactory *factory)
static OutputFactorycurrentFactory ()

Protected Member Functions

void configure (quint32 freq, int chan, Qmmp::AudioFormat format)

Detailed Description

The Output class provides the base interface class of audio outputs.

Author:
Brad Hughes <bhughes@trolltech.com>
Ilya Kotov <forkotov@hotmail.ru>

Constructor & Destructor Documentation

Output ( )

Object contsructor.

virtual ~Output ( ) [virtual]

Destructor.


Member Function Documentation

Returns selected audio parameters.

int channels ( )

Returns channels number.

void configure ( quint32  freq,
int  chan,
Qmmp::AudioFormat  format 
) [protected]

Use this function inside initialize() reimplementation to tell about accepted audio parameters.

Parameters:
freqSample rate.
chanNumber of channels.
formatAudio format.
static Output* create ( ) [static]

Creates selected output.

Returns:
Output subclass object.
static OutputFactory* currentFactory ( ) [static]

Returns selected output factory.

virtual void drain ( ) [pure virtual]

Writes all remaining plugin's internal data to audio output device. Subclass should reimplement this function.

static QList<OutputFactory*> factories ( ) [static]

Returns a list of output factories.

static QString file ( OutputFactory factory) [static]

Returns plugin file path.

Parameters:
factoryOutput plugin factory.

Returns selected audio format.

virtual bool initialize ( quint32  freq,
int  chan,
Qmmp::AudioFormat  format 
) [pure virtual]

Prepares object for usage and setups required audio parameters. Subclass should reimplement this function.

Parameters:
freqSample rate.
chanNumber of channels.
formatAudio format
Returns:
initialization result (true - success, false - failure)
virtual qint64 latency ( ) [pure virtual]

Returns output interface latency in milliseconds.

virtual void reset ( ) [pure virtual]

Drops all plugin's internal data, resets audio device Subclass should reimplement this function.

virtual void resume ( ) [virtual]

Resumes processing audio data.

quint32 sampleRate ( )

Returns samplerate.

int sampleSize ( ) const

Returns sample size in bytes.

static void setCurrentFactory ( OutputFactory factory) [static]

Selects current output factory.

virtual void suspend ( ) [virtual]

Stops processing audio data, preserving buffered audio data.

virtual qint64 writeAudio ( unsigned char *  data,
qint64  maxSize 
) [pure virtual]

Requests playback to pause. If it was paused already, playback should resume. Subclasses that reimplement this function must call the base implementation.

Writes up to maxSize bytes from data to the output interface device. Returns the number of bytes written, or -1 if an error occurred. Subclass should reimplement this function.


The documentation for this class was generated from the following file:
 All Classes Functions Variables Enumerations Enumerator