AudioSink.h 465 B

123456789101112131415161718192021
  1. #ifndef AUDIOSINK_H
  2. #define AUDIOSINK_H
  3. #include <cstdint>
  4. #include <cstdlib>
  5. #include <vector>
  6. class AudioSink
  7. {
  8. public:
  9. AudioSink() {}
  10. virtual ~AudioSink() {}
  11. virtual void feedPCMFrames(const uint8_t *buffer, size_t bytes) = 0;
  12. virtual void volumeChanged(uint16_t volume) {}
  13. // return true if the sink supports rate changing
  14. virtual bool setRate(uint16_t sampleRate) { return false; }
  15. bool softwareVolumeControl = true;
  16. bool usign = false;
  17. };
  18. #endif