Hello, This patch series implements client-side audio volume support. This reduces confusion of guest users when volume control is not effective (because mixemu is disabled or because client-side is muted and can't be unmuted by the guest..)
Instead, the backend is responsible for applying volume giving the guest control over the full range of the client, and avoiding multiple level of volume/mute effects. Although I was mainly interested in having the Spice audio backend support, I also added PulseAudio backend support (which unfortunately requires full-blown API, even after quick discussion with upstream). Marc-André Lureau (11): audio: add VOICE_VOLUME ctl audio: don't apply volume effect if backend has VOICE_VOLUME_CAP audio: use a nominal volume of UINT_MAX hw/ac97: remove USE_MIXER code hw/ac97: the volume mask is not only 0x1f hw/ac97: add support for volume control audio/spice: add support for volume control Do not use pa_simple PulseAudio API configure: pa_simple is not needed anymore Allow controlling volume with PulseAudio backend Make mixemu mandatory audio/audio.c | 25 +++- audio/audio_int.h | 6 + audio/audio_template.h | 2 + audio/mixeng.c | 6 - audio/paaudio.c | 452 +++++++++++++++++++++++++++++++++++++++++++----- audio/spiceaudio.c | 41 +++++ configure | 14 +-- hw/ac97.c | 141 ++++++---------- hw/hda-audio.c | 4 - 9 files changed, 531 insertions(+), 160 deletions(-) -- 1.7.7.6