On 6 August 2014 01:12, Alexander E. Patrakov <patrakov at gmail.com> wrote: > 06.08.2014 00:54, Arun Raghavan wrote: >> >> Hi folks, >> Alexander's already brought up the issue of websites that can set the >> volume on >> a stream programmatically, and either unwittingly or malicious set the >> system >> volume to 100% when using flat-volumes, and while I've been against having >> to >> deal with this on the PulseAudio side, I think we will have to after all. >> >> The practical part of this problem really is websites that set the stream >> volume to 1.0 as intialisation. There's nothing in the HTML5 spec that >> mandates >> this, but that doesn't seem to be stopping people from doing this. The >> Firefox >> folks, who are trying to use PA stream volumes are now also hitting this. >> >> I like how flat-volumes work on the desktop (and I know this is not a >> unanimous >> view), but pragmatically, for the website case, there does not seem to be >> a way >> to make this work. As a compromise, I propose a mechanism to allow streams >> to >> disable flat volumes for themselves. I'm attaching a patch that does this >> (which needs more thorough review by myself as well). >> >> Thoughts? > > > [please treat this e-mail as neutral thoughts, i.e. neither support nor > opposition, even though the text reads as opposition] > > If your patch is applied, I think (I have not tested) that there will be > inconsistency in the volume controls displayed by the GUIs. I.e. the desired > position of some volume controls would be 100%, and of the others it would > be much less, and there is no real way for the user to discern, except by > listening. Yes. I think this is inevitable if (as I want), we continue to keep the global flat volume concept. > I think that the real problem that needs to be solved is not only that flat > volumes are inapplicable to the web, but also that PulseAudio doesn't > provide any API for intra-application mixing. Please see my earlier thoughts > on it here (point 7): > > http://lists.freedesktop.org/archives/pulseaudio-discuss/2014-February/019968.html > > In other words: please add new API that would allow a browser to implement a > per-tab (flat or non-flat, as configured in daemon.conf) visible volume > control, with several substreams being mixed for each tab by PulseAudio. The > javascript inside the browser should be able to set, invisibly for the user, > tab-relative (and thus non-flat) volumes for each substream. I don't think this really feasible - in this case, you need some way to control per-tab volume as well, and that's a UI change that we are in no position to effect across browsers. Regards, Arun