[Bug 17697] Limit total volume

https://www.w3.org/Bugs/Public/show_bug.cgi?id=17697

Jussi Kalliokoski <jussi.kalliokoski@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jussi.kalliokoski@gmail.com

--- Comment #5 from Jussi Kalliokoski <jussi.kalliokoski@gmail.com> 2012-08-16 17:18:56 UTC ---
(In reply to comment #4)
> For what it's worth, we have already received bug reports that certain demos
> (like Jussi's http://niiden.com/orbisyn/ demo) cause deafeningly loud noise in
> the current shipping versions of Chrome and Safari for the Mac.  The output is
> so overwhelmingly loud that the system volume controls have no apparent effect.
> 
> So, while conceptually this is a task for the OS to regulate, UAs will have a
> great deal of pressure to add some kind of volume check to the WebAudio API. 
> The question is, will this limit be part of a spec or not.

This is true. The issue with my demo is however a bit parallel with Bug 18539
[1]. The demo gets underruns which, due to the nature of JS nodes, cause the
high Q low pass filters to have significant feedback.

My proposition for mitigating issues like this for Jer was to monitor the dB
levels at the AudioContext's listener and mute for a certain amount of time if
a certain threshold is topped. This is afaict common behaviour in popular DAWs
as well. This threshold would preferably be above +0.0dB as it may become a
nuisance if any distorted value mutes the output, although preferably
developers should avoid levels like that by for example using a compressor. But
this is not always in the developers hands, like in the DAW use case.

It might also be useful to notify the developer of the mute, for example with
an event on the AudioContext.

[1] https://www.w3.org/Bugs/Public/show_bug.cgi?id=18539

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Thursday, 16 August 2012 17:18:58 UTC