Skip to content

Commit f9c58e9

Browse files
committed
AnalogAudioArduino change parent class to AudioStream
1 parent a868770 commit f9c58e9

File tree

1 file changed

+19
-3
lines changed

1 file changed

+19
-3
lines changed

src/AudioAnalog/AnalogAudioArduino.h

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,32 @@ namespace audio_tools {
1919
* @copyright GPLv3
2020
*
2121
*/
22-
class AnalogAudioArduino : public BaseStream {
22+
class AnalogAudioArduino : public AudioStream {
2323
public:
2424
AnalogAudioArduino() = default;
2525

2626
/// provides the default configuration
27-
AnalogConfigStd defaultConfig(){
27+
AnalogConfigStd defaultConfig() {
2828
AnalogConfigStd def;
2929
return def;
3030
}
3131

32+
void setAudioInfo(AudioInfo info) override {
33+
TRACEI();
34+
if (config.sample_rate != info.sample_rate ||
35+
config.channels != info.channels ||
36+
config.bits_per_sample != info.bits_per_sample) {
37+
config.sample_rate = info.sample_rate;
38+
config.bits_per_sample = info.bits_per_sample;
39+
config.channels = info.channels;
40+
config.logInfo();
41+
setupTimer();
42+
}
43+
}
44+
45+
/// Reopen with last config
46+
bool begin() override { return begin(config); }
47+
3248
bool begin(AnalogConfigStd cfg) {
3349
TRACED();
3450
config = cfg;
@@ -48,7 +64,7 @@ class AnalogAudioArduino : public BaseStream {
4864
return setupTimer();
4965
}
5066

51-
void end() { timer.end(); }
67+
void end() override { timer.end(); }
5268

5369
int available() override {
5470
if (config.rx_tx_mode == TX_MODE) return 0;

0 commit comments

Comments
 (0)