Hi, 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). v4: - code style fixes (only warnings left - mostly spaces) - dropped the 1 << 32 -1 change - added QEMU_MIXEMU runtime option, enabled by default - rfc: removed some deprecated audio options Marc-André Lureau (11): audio: add VOICE_VOLUME ctl audio: don't apply volume effect if backend has VOICE_VOLUME_CAP 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 Enable mixemu by default, add runtime option audio/rfc: remove PLIVE and PERIOD options audio/audio.c | 64 +++---- audio/audio_int.h | 6 + audio/audio_template.h | 28 +--- audio/mixeng.c | 6 - audio/paaudio.c | 476 +++++++++++++++++++++++++++++++++++++++++++----- audio/spiceaudio.c | 41 ++++ configure | 14 +- hw/ac97.c | 140 +++++--------- hw/hda-audio.c | 4 - 9 files changed, 561 insertions(+), 218 deletions(-) -- 1.7.7.6