3#include "AudioToolsConfig.h"
4#include "AudioLogger.h"
5#include "AudioTools/CoreAudio/AudioBasic/Collections/Vector.h"
6#include "AudioTools/CoreAudio/AudioTypes.h"
7#include "AudioTools/CoreAudio/BaseStream.h"
8#include "AudioTools/CoreAudio/AudioOutput.h"
32 notifyAudioChange(from);
37 Print *p_print = &out_stream;
44 Print *p_print = &out_stream;
50 virtual void setOutput(
Print &out_stream)
override { p_print = &out_stream; }
54 virtual bool begin(
AudioInfo info)
override {
58 bool begin()
override {
return true; }
59 void end()
override {}
70 LOGE(
"not implemented");
75 Print *p_print =
nullptr;
87 bool isResultPCM()
override {
return true; }
103 virtual const char *
mime() = 0;
114 virtual void setBlockSize(
int blockSize) = 0;
119 virtual int blockSize() = 0;
137 virtual bool begin() {
return true; }
138 virtual void end() {}
147 virtual operator bool() {
return false; }
148 virtual int readStream(Stream &in) {
return 0; };
151 virtual size_t write(
const uint8_t *data,
size_t len) {
152 memset((
void *)data, 0, len);
156 virtual const char *
mime() {
return nullptr; }