MediaTrackConstraints: echoCancellation property
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
The MediaTrackConstraints
dictionary's
echoCancellation
property is a
ConstrainBooleanOrDOMString
describing the requested or mandatory constraints placed
upon the value of the echoCancellation
constrainable property.
If needed, you can determine whether or not this constraint is supported by checking
the value of MediaTrackSupportedConstraints.echoCancellation
as returned
by a call to MediaDevices.getSupportedConstraints()
. However, typically
this is unnecessary since browsers will ignore any constraints they're unfamiliar with.
Value
A boolean, a string, or a ConstrainBooleanOrDOMString
object.
If the browser supports specific echo cancellation types, the value can be set as one of the following:
"all"
-
All user system-generated audio captured by the user's microphone is removed. This is useful for example in situations where you want to avoid capturing privacy-sensitive audio such as screen reader output and system notifications.
"remote-only"
-
Only user system-generated audio captured by the user's microphone from remote sources (as represented by
MediaStreamtrack
s sourced from anRTCPeerConnection
) is removed. This is useful when you want to remove echo from communication with remote peers but still share local audio, such as in the case of a music lesson where the teacher wants to hear their student(s) playing along to an audio track but still communicate clearly with them. true
-
The browser decides what audio will be removed from the signals recorded by the microphone. It must attempt to cancel at least as much as
remote-only
and should attempt to cancel as much asall
. false
-
No audio is removed; no echo cancellation will take place.
If the browser doesn't support specific echo cancellation types, the value can be true
or false
.
If set as one of the above values, the user agent will attempt to obtain media with echo cancellation enabled or disabled as specified, if possible, but will not fail if this can't be done.
If the value is given as an object with an exact
field, that field's value indicates a required setting for the echo cancellation feature; if it can't be met, then the request will result in an error.
Examples
See the Constraint exerciser example.
Specifications
Specification |
---|
Media Capture and Streams> # dom-mediatrackconstraintset-echocancellation> |
Browser compatibility
Loading…