Implemented volume control for jukebox

This commit is contained in:
emeric
2026-02-18 00:12:32 +01:00
parent 5f6d3e796a
commit 7a30bb98f6
9 changed files with 137 additions and 51 deletions
@@ -62,15 +62,18 @@ namespace lms::audio::pulseaudio
void asyncWrite(std::span<const std::byte> buffer, WriteCompletionCallback cb) override;
void asyncDrain(DrainCompletionCallback cb) override;
void pause() override;
void resume() override;
bool isPaused() const override;
std::chrono::microseconds getPlaybackTime() const override;
std::chrono::microseconds getLatency() const override;
void flush() override;
void pause() override;
void resume() override;
bool isPaused() const override;
void setVolume(float volume) override;
float getVolume() const override;
void connect();
void onStateChanged();
void onWriteRequested(std::size_t writableSize);
@@ -83,6 +86,7 @@ namespace lms::audio::pulseaudio
pa_threaded_mainloop* _mainLoop;
const PcmParameters _outputParameters;
PaStreamPtr _stream;
float _currentVolume{ 1.F };
WaitReadyCallback _waitReadyCallback;