mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 02:47:35 +00:00
AudioServer: Add a 'self_muted' state to each client connection
This new state will allow us to ignore muted clients when computing the 'output mix' in the Mixer.
This commit is contained in:
parent
ce5f5f543f
commit
bb747c471f
3 changed files with 18 additions and 0 deletions
|
@ -5,6 +5,8 @@ endpoint AudioServer
|
||||||
// Mixer functions
|
// Mixer functions
|
||||||
set_main_mix_muted(bool muted) => ()
|
set_main_mix_muted(bool muted) => ()
|
||||||
is_main_mix_muted() => (bool muted)
|
is_main_mix_muted() => (bool muted)
|
||||||
|
set_self_muted(bool muted) => ()
|
||||||
|
is_self_muted() => (bool muted)
|
||||||
get_main_mix_volume() => (double volume)
|
get_main_mix_volume() => (double volume)
|
||||||
set_main_mix_volume(double volume) => ()
|
set_main_mix_volume(double volume) => ()
|
||||||
get_self_volume() => (double volume)
|
get_self_volume() => (double volume)
|
||||||
|
|
|
@ -149,4 +149,18 @@ void ClientConnection::set_main_mix_muted(bool muted)
|
||||||
{
|
{
|
||||||
m_mixer.set_muted(muted);
|
m_mixer.set_muted(muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Messages::AudioServer::IsSelfMutedResponse ClientConnection::is_self_muted()
|
||||||
|
{
|
||||||
|
if (m_queue)
|
||||||
|
return m_queue->is_muted();
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ClientConnection::set_self_muted(bool muted)
|
||||||
|
{
|
||||||
|
if (m_queue)
|
||||||
|
m_queue->set_muted(muted);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,8 @@ private:
|
||||||
virtual Messages::AudioServer::GetPlayingBufferResponse get_playing_buffer() override;
|
virtual Messages::AudioServer::GetPlayingBufferResponse get_playing_buffer() override;
|
||||||
virtual Messages::AudioServer::IsMainMixMutedResponse is_main_mix_muted() override;
|
virtual Messages::AudioServer::IsMainMixMutedResponse is_main_mix_muted() override;
|
||||||
virtual void set_main_mix_muted(bool) override;
|
virtual void set_main_mix_muted(bool) override;
|
||||||
|
virtual Messages::AudioServer::IsSelfMutedResponse is_self_muted() override;
|
||||||
|
virtual void set_self_muted(bool) override;
|
||||||
virtual void set_sample_rate(u32 sample_rate) override;
|
virtual void set_sample_rate(u32 sample_rate) override;
|
||||||
virtual Messages::AudioServer::GetSampleRateResponse get_sample_rate() override;
|
virtual Messages::AudioServer::GetSampleRateResponse get_sample_rate() override;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue