From 235023d71122bce1fc3eadd90d8dc75cc5612f78 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Mon, 22 Feb 2010 14:15:15 +0000 Subject: document the linux_volume_catcher high-level design --- indra/media_plugins/webkit/linux_volume_catcher.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'indra/media_plugins') diff --git a/indra/media_plugins/webkit/linux_volume_catcher.cpp b/indra/media_plugins/webkit/linux_volume_catcher.cpp index 89cababdd8..024235717b 100644 --- a/indra/media_plugins/webkit/linux_volume_catcher.cpp +++ b/indra/media_plugins/webkit/linux_volume_catcher.cpp @@ -31,6 +31,15 @@ * @endcond */ +/* + The high-level design is as follows: + 1) Connect to the PulseAudio daemon + 2) Watch for the creation of new audio players connecting to the daemon (this includes ALSA clients running on the PulseAudio emulation layer, such as Flash plugins) + 3) Examine the audio player's PID to see if it belongs to our own process + 4) If so, tell PA to adjust the volume of that audio player ('sink input' in PA parlance) + 5) Keep a list of all living audio players that we care about, adjust the volumes of all of them when we get a new setVolume() call + */ + #include "linden_common.h" #include -- cgit v1.2.3