blip  0.1
WAVAudioDecoder.hpp
Go to the documentation of this file.
1 #ifndef __blip_WAVAudioDecoder_hpp
2 #define __blip_WAVAudioDecoder_hpp
3 
4 #include <blip/Blip.hpp>
5 #include <blip/AudioDecoder.hpp>
6 
7 namespace blip {
8 
14 {
15  public:
16 
20  WAVAudioDecoder(ccxx::DataReader* reader);
21 
23  virtual ~WAVAudioDecoder();
24 
25  protected:
26 
27  // Throw IOException
28  virtual void readMetadata(ccxx::DataReader* reader);
29  virtual void readAudio(ccxx::DataReader* reader, AudioClip* audio);
30 
31  private:
32 
33  uint64_t _dataLength;
34 
35  CCXX_COPY_DECLS(WAVAudioDecoder);
36 };
37 
38 } // namespace blip
39 
40 #endif // __blip_WAVAudioDecoder_hpp
An abstract base class for audio decoders.
Definition: AudioDecoder.hpp:28
WAVAudioDecoder(ccxx::DataReader *reader)
Construct a new WAVAudioDecoder that will read a WAV audio clip from the given DataReader.
Definition: WAVAudioDecoder.cpp:29
virtual void readAudio(ccxx::DataReader *reader, AudioClip *audio)
This method must be implemented to perform the audio data decoding.
Definition: WAVAudioDecoder.cpp:128
WAV file format details at: https://ccrma.stanford.edu/courses/422/projects/WaveFormat/.
Definition: AccelerometerSensorEvent.cpp:3
An AudioDecoder for WAV audio clips.
Definition: WAVAudioDecoder.hpp:13
virtual void readMetadata(ccxx::DataReader *reader)
This method must be implemented to perform the audio metadata decoding.
Definition: WAVAudioDecoder.cpp:45
A container for audio data.
Definition: AudioClip.hpp:13
virtual ~WAVAudioDecoder()
Destructor.
Definition: WAVAudioDecoder.cpp:38