MP3Decoder.h 484 B

12345678910111213141516171819202122
  1. #pragma once
  2. #include "BaseCodec.h"
  3. #include "mp3dec.h"
  4. namespace bell {
  5. class MP3Decoder : public BaseCodec {
  6. private:
  7. HMP3Decoder mp3;
  8. int16_t* pcmData;
  9. MP3FrameInfo frame = {};
  10. public:
  11. MP3Decoder();
  12. ~MP3Decoder();
  13. bool setup(uint32_t sampleRate, uint8_t channelCount,
  14. uint8_t bitDepth) override;
  15. bool setup(AudioContainer* container) override;
  16. uint8_t* decode(uint8_t* inData, uint32_t& inLen, uint32_t& outLen) override;
  17. };
  18. } // namespace bell