diff -Nur audacious-plugins-fedora-2.1-pulseaudio/src/pulse_audio/pulse_audio.c audacious-plugins-fedora-2.1-pulseaudio-volume-accuracy/src/pulse_audio/pulse_audio.c
--- audacious-plugins-fedora-2.1-pulseaudio/src/pulse_audio/pulse_audio.c 2009-10-21 22:44:06.149809732 +0200
+++ audacious-plugins-fedora-2.1-pulseaudio-volume-accuracy/src/pulse_audio/pulse_audio.c 2009-10-21 22:45:28.048813828 +0200
@@ -38,6 +38,7 @@
static pa_cvolume volume;
static int volume_valid = 0;
+static int save_volume_l = 0, save_volume_r = 0;
static int do_trigger = 0;
static uint64_t written = 0;
@@ -197,8 +198,8 @@
if (b) {
if (v.channels == 2) {
- *l = (int) ((v.values[0]*100)/PA_VOLUME_NORM);
- *r = (int) ((v.values[1]*100)/PA_VOLUME_NORM);
+ *l = save_volume_l;
+ *r = save_volume_r;
} else
*l = *r = (int) ((pa_cvolume_avg(&v)*100)/PA_VOLUME_NORM);
}
@@ -219,6 +220,8 @@
}
static void pulse_set_volume(int l, int r) {
+ save_volume_l = l;
+ save_volume_r = r;
if (connected) {
pa_threaded_mainloop_lock(mainloop);