mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 23:27:43 +00:00
Audio: Change how volume works
Across the entire audio system, audio now works in 0-1 terms instead of 0-100 as before. Therefore, volume is now a double instead of an int. The master volume of the AudioServer changes smoothly through a FadingProperty, preventing clicks. Finally, volume computations are done with logarithmic scaling, which is more natural for the human ear. Note that this could be 4-5 different commits, but as they change each other's code all the time, it makes no sense to split them up.
This commit is contained in:
parent
2909c3a931
commit
152ec28da0
14 changed files with 190 additions and 45 deletions
|
@ -47,7 +47,7 @@ public:
|
|||
virtual void set_volume(double volume)
|
||||
{
|
||||
m_player_state.volume = volume;
|
||||
client_connection().set_main_mix_volume((double)(volume * 100));
|
||||
client_connection().set_self_volume(volume);
|
||||
}
|
||||
virtual void set_loaded_file_samplerate(int samplerate) { m_player_state.loaded_file_samplerate = samplerate; }
|
||||
virtual void set_looping_file(bool loop)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue