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