Skylicht Engine
Loading...
Searching...
No Matches
CAudioDecoderRawWav.h
1#ifndef _SKYLICHTAUDIO_IAUDIODECODER_RAW_WAV_H_
2#define _SKYLICHTAUDIO_IAUDIODECODER_RAW_WAV_H_
3
4#include "Stream/IStream.h"
5#include "Driver/ISoundSource.h"
6#include "Driver/ISoundDriver.h"
7#include "IAudioDecoder.h"
8
9namespace Skylicht
10{
11 namespace Audio
12 {
13 class CAudioDecoderRawWav : public IAudioDecoder
14 {
15 protected:
16 IStreamCursor* m_streamCursor;
17
18 public:
19 CAudioDecoderRawWav(IStream* stream);
20
21 virtual ~CAudioDecoderRawWav();
22
23 virtual EStatus initDecode();
24
25 virtual EStatus decode(void* outputBuffer, int bufferSize);
26
27 virtual int seek(int bufferSize);
28
29 virtual void getTrackParam(STrackParams* track);
30
31 virtual float getCurrentTime();
32
33 virtual void stopStream();
34 };
35 }
36}
37
38#endif
Interface for a stream cursor, providing seek and read operations on an audio stream.
Definition IStream.h:39
Interface for an audio data stream (File, Memory, etc.).
Definition IStream.h:107
Handles all core audio functionality.
Definition AudioDebugLog.h:31
Everything in the Skylicht Engine. You can start by looking at the topics.
Definition AudioDebugLog.h:29
Definition ISoundSource.h:43