diff options
author | Marc-André Lureau <marcandre.lureau@redhat.com> | 2011-05-23 12:20:17 +0200 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@redhat.com> | 2011-06-22 12:12:26 +0200 |
commit | d1758b328811979beb58ff9ddb9cf4f318fa28f7 (patch) | |
tree | 7d2f66e34e762db3194eb86d5d6387e286217b35 /common | |
parent | 5ec91855d818078523653e79562921bcea9bef14 (diff) | |
download | spice-d1758b328811979beb58ff9ddb9cf4f318fa28f7.tar.gz spice-d1758b328811979beb58ff9ddb9cf4f318fa28f7.tar.xz spice-d1758b328811979beb58ff9ddb9cf4f318fa28f7.zip |
sndworker: add AudioVolume/AudioMute messages
These messages allow the guest to send the audio device volume to the
client. It uses an arbitrary scale of 16bits, which works good enough
for now.
Save VolumeState in {Playback,Record}State, so that we can send the
current volume on channel connection.
Note about future improvements:
- add exact dB support
- add client to guest volume change
Updated since v2:
- bumped record and playback interface minor version to allow
conditional compilation
Updated since v1:
- sync record volume on connection too
Diffstat (limited to 'common')
-rw-r--r-- | common/messages.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/common/messages.h b/common/messages.h index 6fcd8bea..8151dc00 100644 --- a/common/messages.h +++ b/common/messages.h @@ -369,6 +369,15 @@ typedef struct SpiceMsgcMouseRelease { int32_t buttons_state; } SpiceMsgcMouseRelease; +typedef struct SpiceMsgAudioVolume { + uint8_t nchannels; + uint16_t volume[0]; +} SpiceMsgAudioVolume; + +typedef struct SpiceMsgAudioMute { + uint8_t mute; +} SpiceMsgAudioMute; + typedef struct SpiceMsgPlaybackMode { uint32_t time; uint32_t mode; //SPICE_AUDIO_DATA_MODE_? |