summaryrefslogtreecommitdiffstats
path: root/spice.proto
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2011-05-23 12:20:17 +0200
committerMarc-André Lureau <marcandre.lureau@redhat.com>2011-06-22 12:12:26 +0200
commitd1758b328811979beb58ff9ddb9cf4f318fa28f7 (patch)
tree7d2f66e34e762db3194eb86d5d6387e286217b35 /spice.proto
parent5ec91855d818078523653e79562921bcea9bef14 (diff)
downloadspice-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 'spice.proto')
-rw-r--r--spice.proto13
1 files changed, 13 insertions, 0 deletions
diff --git a/spice.proto b/spice.proto
index 6160de1d..80c40d4b 100644
--- a/spice.proto
+++ b/spice.proto
@@ -926,6 +926,15 @@ enum16 audio_fmt {
S16,
};
+message AudioVolume {
+ uint8 nchannels;
+ uint16 volume[nchannels] @end;
+};
+
+message AudioMute {
+ uint8 mute;
+};
+
channel PlaybackChannel : BaseChannel {
server:
message {
@@ -947,6 +956,8 @@ channel PlaybackChannel : BaseChannel {
} start;
Empty stop;
+ AudioVolume volume;
+ AudioMute mute;
};
channel RecordChannel : BaseChannel {
@@ -958,6 +969,8 @@ channel RecordChannel : BaseChannel {
} start = 101;
Empty stop;
+ AudioVolume volume;
+ AudioMute mute;
client:
message {
uint32 time;