diff --git a/index.html b/index.html index 628205d..fdcd059 100644 --- a/index.html +++ b/index.html @@ -551,6 +551,72 @@

Exposing MediaStreamTrack source background blur support

}; +
+

VoiceIsolation constraint

+
+

Some platforms offer functionality for voice isolation: + Attempting to remove all parts of an audio track that do not + correspond to a human voice. Some platforms even attempt to + remove extraneous voices, leaving the "main voice" as the + dominant component of the audio. The exact methods used may + vary between implementations. +

+

+ This constraint permits the platform to turn on that functionality, + with the desired result being that the "main voice" in the audio + signal is the dominant component of the audio. +

+

+ This will have large effects on audio that is presented for + other reasons than to transmit voice (for instance music or + ambient noises), so needs to be off by default. +

+

+ This constraint is a stronger version of noise cancellation, + which means that if the "noiseSuppression" constraint is set + to false and "voiceIsolation" is set to true, the value of + "noiseCancellation" will be ignored. +

+

+ This constraint has no such relationship with any other + constraint; in particular it does not affect echoCancellation. +

+
+
+

+ The WebIDL changes are the following: +

+partial dictionary MediaTrackSupportedConstraints {
+  boolean voiceIsolation = true;
+};
+
+partial dictionary MediaTrackConstraintSet {
+  ConstrainBoolean voiceIsolation;
+};
+
+partial dictionary MediaTrackSettings {
+  boolean voiceIsolation;
+};
+
+partial dictionary MediaTrackCapabilities {
+  sequence<boolean> voiceIsolation;
+};
+        
+

+

Processing considerations

+

+ When the "voiceIsolation" setting is set to true by the + ApplyConstraints algorithm, the UA + will attempt to remove the components of the audio track that + do not correspond to a human voice. If a dominant voice can be + identified, the UA will attempt to enhance that voice. +

+

+ When the "voiceIsolation" constraint setting is set to false + by the ApplyConstraints algorithm, the UA will process the + audio according to other settings in its normal fashion. +

+

Exposing change of MediaStreamTrack configuration