add support for dB volumes

git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@166 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
Lennart Poettering 2004-09-01 12:48:47 +00:00
parent fa19d6ab7e
commit 9c4fd2a2c7
5 changed files with 28 additions and 6 deletions

View file

@ -25,6 +25,7 @@
#include <stdio.h>
#include <assert.h>
#include <math.h>
#include "sample.h"
@ -104,3 +105,17 @@ pa_volume_t pa_volume_multiply(pa_volume_t a, pa_volume_t b) {
return (pa_volume_t) p;
}
pa_volume_t pa_volume_from_dB(double f) {
if (f <= -200)
return PA_VOLUME_MUTED;
return (pa_volume_t) (pow(10, f/20)*PA_VOLUME_NORM);
}
double pa_volume_to_dB(pa_volume_t v) {
if (v == PA_VOLUME_MUTED)
return -200;
return 20*log10((double) v/PA_VOLUME_NORM);
}