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);