Implement volume updates for pipewire output

This commit is contained in:
Nicolai Syvertsen
2021-10-18 23:51:52 +02:00
parent 31151cec3c
commit b941a7df83
3 changed files with 109 additions and 13 deletions

View File

@@ -37,6 +37,8 @@ public:
{
}
~PipeWireMixer() override;
PipeWireMixer(const PipeWireMixer &) = delete;
PipeWireMixer &operator=(const PipeWireMixer &) = delete;
@@ -82,7 +84,14 @@ pipewire_mixer_init([[maybe_unused]] EventLoop &event_loop, AudioOutput &ao,
const ConfigBlock &)
{
auto &po = (PipeWireOutput &)ao;
return new PipeWireMixer(po, listener);
auto *pm = new PipeWireMixer(po, listener);
pipewire_output_set_mixer(po, *pm);
return pm;
}
PipeWireMixer::~PipeWireMixer()
{
pipewire_output_clear_mixer(output, *this);
}
const MixerPlugin pipewire_mixer_plugin = {