7#include "IRefCounted.h"
8#include "IDataSource.h"
9#include "EAudioFormats.h"
10#include "cAudioString.h"
54 virtual bool seek(
float seconds,
bool relative) = 0;
Interface for all Audio Decoders in cAudio.
virtual float getTotalTime()=0
If seeking is supported, will return the length of the audio steam in seconds. Returns a negative num...
IDataSource * Stream
Pointer to the data source to take audio data from.
virtual float getCurrentTime()=0
If seeking is supported, will return the current position in the stream in seconds....
virtual int getFrequency()=0
Returns the frequency (sample rate) of the audio data.
virtual int getCompressedSize()=0
Returns the compressed (original) size of the audio stream, before decoding.
virtual cAudioString getType() const =0
Returns the IAudioDecoderType.
virtual int getCurrentCompressedPosition()=0
Returns the position in the compressed (original) audio stream before decoding.
IAudioDecoder(IDataSource *stream)
Default Constructor.
virtual AudioFormats getFormat()=0
Returns the format of the audio data.
virtual bool setPosition(int position, bool relative)=0
Sets the position in the stream to read from.
virtual bool isValid()=0
Returns whether the stream is valid for this codec.
virtual int readAudioData(void *output, int amount)=0
Reads a section of data out of the audio stream.
virtual bool seek(float seconds, bool relative)=0
If seeking is supported, will seek the stream to seconds.
virtual int getCurrentPosition()=0
If available, returns the current position in the decoded audio stream in bytes. Returns a negative n...
virtual bool isSeekingSupported()=0
Returns whether seeking is supported.
virtual int getTotalSize()=0
If available, returns the total decoded size of the audio stream. Returns a negative number if this c...
Interface for data providers in cAudio.
Applies reference counting to certain cAudio objects.
virtual void grab()
Increments the reference count by one.
virtual bool drop()
Decrements the reference count by one. If it hits zero, this object is deleted.
Main namespace for the entire cAudio library.
AudioFormats
Enumeration of audio formats supported by the engine.