diff options
author | Dave Reisner <dreisner@archlinux.org> | 2012-05-11 12:08:51 -0400 |
---|---|---|
committer | Dave Reisner <dreisner@archlinux.org> | 2012-05-11 12:08:51 -0400 |
commit | c55d186490c94f29f2180d8a87de5c52b7a46b94 (patch) | |
tree | 5c5dfacac60b04cd29de1b8ea1c9a6501fef40b8 | |
parent | d5682e1cf9c42cd442ca83f20ae022427c12e54f (diff) | |
download | mirror-ponymix-c55d186490c94f29f2180d8a87de5c52b7a46b94.tar.gz mirror-ponymix-c55d186490c94f29f2180d8a87de5c52b7a46b94.tar.bz2 mirror-ponymix-c55d186490c94f29f2180d8a87de5c52b7a46b94.zip |
show volume after setting
-rw-r--r-- | pulsemix.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -107,7 +107,7 @@ int xstrtol(const char *str, long *out) static int pulse_async_wait(struct pulseaudio_t *pulse, pa_operation *op) { - int r; + int r = 0; while (pa_operation_get_state(op) == PA_OPERATION_RUNNING) pa_mainloop_iterate(pulse->mainloop, 1, &r); @@ -117,16 +117,20 @@ static int pulse_async_wait(struct pulseaudio_t *pulse, pa_operation *op) static void sink_get_volume(struct pulseaudio_t *pulse) { - printf("%d%%\n", pulse->sink->volume_percent); + printf("%d\n", pulse->sink->volume_percent); } static void sink_set_volume(struct pulseaudio_t *pulse, struct sink_t *sink, long v) { + int r; pa_cvolume *vol = pa_cvolume_set(&sink->volume, sink->volume.channels, (int)fmax((double)v * PA_VOLUME_NORM / 100, 0)); pa_operation *op = pa_context_set_sink_volume_by_index(pulse->cxt, sink->idx, vol, NULL, NULL); - pulse_async_wait(pulse, op); + r = pulse_async_wait(pulse, op); + + if (r == 0) + printf("%ld\n", v); pa_operation_unref(op); } |