diff --git a/index.html b/index.html index 1ef8bfc..56d0728 100644 --- a/index.html +++ b/index.html @@ -417,5 +417,71 @@
Some platforms or User Agents may provide built-in support for background blurring of video frames, in particular for camera video streams. + Web applications may either want to control or at least be aware that background blur is applied at the source level. + This may for instance allow the web application to update its UI or to not apply background blur on its own. + For that reason, we extend {{MediaStreamTrack}} with the following properties. +
+The WebIDL changes are the following: +
+partial dictionary MediaTrackSupportedConstraints { + boolean backgroundBlur = true; +}; + +partial dictionary MediaTrackConstraintSet { + ConstrainBoolean backgroundBlur; +}; + +partial dictionary MediaTrackSettings { + boolean backgroundBlur; +}; + +partial dictionary MediaTrackCapabilities { + sequence<boolean> backgroundBlur; +};+
The configuration (capabilities, constraints or settings) of a {{MediaStreamTrack}} may be changed dynamically + outside the control of web applications. One example is when a user decides to switch on background blur through + the operating system. Web applications might want to know that the configuration + of a particular {{MediaStreamTrack}} has changed. For that purpose, a new event is defined below. +
++partial interface MediaStreamTrack { + attribute EventHandler onconfigurationchange; +};+
+
When the [=User Agent=] detects a change of configuration + in a track's underlying source, the [=User Agent=] MUST run the following steps:
+If track.{{MediaStreamTrack/muted}} is true
, wait for track.{{MediaStreamTrack/muted}}
+ to become false
or track.{{MediaStreamTrack/readyState}} to be "ended".
If track.{{MediaStreamTrack/readyState}} is "ended", abort these steps.
If track's capabilities, constraints and settings are matching source configuration, abort these steps. +
Update track's capabilities, constraints and settings according track's underlying source.
+[=Fire an event=] named configurationchange on track.
++
These events are potentially triggered simultaneously on documents of different origins. + [=User Agents=] MAY add fuzzing on the timing of events to avoid cross-origin activity correlation.
+