mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-12-18 08:56:40 -05:00
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:
parent
fa19d6ab7e
commit
9c4fd2a2c7
5 changed files with 28 additions and 6 deletions
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue