1 --- a/alsamixer/volume_mapping.c
2 +++ b/alsamixer/volume_mapping.c
3 @@ -114,9 +114,9 @@ static double get_normalized_volume(snd_
4 if (use_linear_dB_scale(min, max))
5 return (value - min) / (double)(max - min);
7 - normalized = exp10((value - max) / 6000.0);
8 + normalized = pow(10, (value - max) / 6000.0);
9 if (min != SND_CTL_TLV_DB_GAIN_MUTE) {
10 - min_norm = exp10((min - max) / 6000.0);
11 + min_norm = pow(10, (min - max) / 6000.0);
12 normalized = (normalized - min_norm) / (1 - min_norm);
15 @@ -149,7 +149,7 @@ static int set_normalized_volume(snd_mix
18 if (min != SND_CTL_TLV_DB_GAIN_MUTE) {
19 - min_norm = exp10((min - max) / 6000.0);
20 + min_norm = pow(10, (min - max) / 6000.0);
21 volume = volume * (1 - min_norm) + min_norm;
23 value = lrint_dir(6000.0 * log10(volume), dir) + max;