Skip to content

Commit 47ed8f8

Browse files
committed
Use set volume for reporting
1 parent a12b2de commit 47ed8f8

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/AudioBoard.h

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,13 @@ class AudioBoard {
5656
if (line == power_amp_line) setPAPower(!enable);
5757
return driver->setMute(enable, line);
5858
}
59-
bool setVolume(int volume) { return driver->setVolume(volume); }
60-
int getVolume() { return driver->getVolume(); }
59+
bool setVolume(int volume) {
60+
// when we get the volume we make sure that we report the same value
61+
// w/o rounding issues
62+
this->volume = volume;
63+
return driver->setVolume(volume);
64+
}
65+
int getVolume() { return volume >= 0 ? volume : driver->getVolume(); }
6166
DriverPins& getPins() { return *pins; }
6267
bool setPAPower(bool enable) { return driver->setPAPower(enable); }
6368
/// set volume for adc: this is only supported on some defined codecs
@@ -72,6 +77,7 @@ class AudioBoard {
7277
CodecConfig codec_cfg;
7378
AudioDriver* driver = nullptr;
7479
int power_amp_line = ES8388_PA_LINE;
80+
int volume = -1;
7581
};
7682

7783
// -- Boards

0 commit comments

Comments
 (0)