]> code.delx.au - pulseaudio/blob - src/tests/voltest.c
Merge commit 'flameeyes/libtool-2.2'
[pulseaudio] / src / tests / voltest.c
1 #include <stdio.h>
2
3 #include <pulse/volume.h>
4 #include <pulse/gccmacro.h>
5
6 int main(int argc, char *argv[]) {
7 pa_volume_t v;
8 pa_cvolume cv;
9
10 for (v = PA_VOLUME_MUTED; v <= PA_VOLUME_NORM*2; v += 256) {
11
12 double dB = pa_sw_volume_to_dB(v);
13 double f = pa_sw_volume_to_linear(v);
14
15 printf("Volume: %3i; percent: %i%%; decibel %0.2f; linear = %0.2f; volume(decibel): %3i; volume(linear): %3i\n",
16 v, (v*100)/PA_VOLUME_NORM, dB, f, pa_sw_volume_from_dB(dB), pa_sw_volume_from_linear(f));
17 }
18
19 for (v = PA_VOLUME_MUTED; v <= PA_VOLUME_NORM*2; v += 256) {
20 char s[PA_CVOLUME_SNPRINT_MAX], t[PA_SW_CVOLUME_SNPRINT_DB_MAX];
21
22 pa_cvolume_set(&cv, 2, v);
23
24 printf("Volume: %3i [%s] [%s]\n",
25 v,
26 pa_cvolume_snprint(s, sizeof(s), &cv),
27 pa_sw_cvolume_snprint_dB(t, sizeof(t), &cv));
28
29 }
30
31 return 0;
32 }