7 #include "cAudioDefines.h"
9 #if CAUDIO_COMPILE_WITH_OGG_DECODER == 1
11 #include "IAudioDecoder.h"
13 #include <vorbis/codec.h>
14 #include <vorbis/vorbisfile.h>
15 #include "cMemoryOverride.h"
20 class cOggDecoder :
public IAudioDecoder,
public cMemoryOverride
24 cOggDecoder(IDataSource* stream);
28 virtual int getFrequency();
29 virtual bool isSeekingSupported();
30 virtual bool isValid();
31 virtual int readAudioData(
void* output,
int amount);
32 virtual bool setPosition(
int position,
bool relative);
33 virtual bool seek(
float seconds,
bool relative);
34 virtual float getTotalTime();
35 virtual int getTotalSize();
36 virtual int getCompressedSize();
37 virtual float getCurrentTime();
38 virtual int getCurrentPosition();
39 virtual int getCurrentCompressedPosition();
40 virtual cAudioString getType()
const;
44 ov_callbacks vorbisCallbacks;
46 vorbis_info* vorbisInfo;
48 vorbis_comment* vorbisComment;
50 OggVorbis_File oggStream;
AudioFormats
Enumeration of audio formats supported by the engine.