enabled
property on the
MediaStreamTrack
interface is a Boolean value which is
true
if the track is allowed to render the source stream or
false
if it is not. This can be used to intentionally mute a track.
When enabled, a track's data is output from the source to the destination; otherwise, empty frames are output.
In the case of audio, a disabled track generates frames of silence (that is, frames in which every sample's value is 0). For video tracks, every frame is filled entirely with black pixels.
值
enabled
, in essence, represents what a typical user would consider the muting state for a track, whereas the
muted
property indicates a state in which the track is temporarily unable to output data, such as a scenario in which frames have been lost in transit.
注意: If the track has been disconnected, the value of this property can be changed, but has no effect.
const enabledFlag = track.enabled track.enabled = [true | false]
当
true
,
enabled
indicates that the track is permitted to render its actual media to the output. When
enabled
被设为
false
, the track only generates empty frames.
Empty audio frames have every sample's value set to 0. Empty video frames have every pixel set to black.
注意:
When implementing a mute/unmute feature, you should use the
enabled
特性。
若
MediaStreamTrack
represents the video input from a camera, disabling the track by setting
enabled
to
false
also updates device activity indicators to show that the camera is not currently recording or streaming. For example, the green "in use" light next to the camera in iMac and MacBook computers turns off while the track is muted in this way.
This example demonstrates a
click
event handler for a pause button.
pauseButton.onclick = function(evt) {
const newState = !myAudioTrack.enabled;
pauseButton.innerHTML = newState ? "▶️" : "⏸️";
myAudioTrack.enabled = newState;
}
This creates a variable,
newState
, which is the opposite of the current value of
enabled
, then uses that to select either the Emoji character for the "play" icon or the character for the "pause" icon as the new
innerHTML
of the pause button's element.
Finally, the new value of
enabled
is saved, making the change take effect.
| 规范 | 状态 | 注释 |
|---|---|---|
|
媒体捕获和流
The definition of 'enabled' in that specification. |
候选推荐 | 最初的规范。 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
enabled
|
Chrome Yes | Edge 12 | Firefox 24 | IE No | Opera Yes | Safari Yes | WebView Android Yes | Chrome Android Yes | Firefox Android 24 | Opera Android Yes | Safari iOS Yes | Samsung Internet Android Yes |
完整支持
不支持
MediaStreamTrack
AudioStreamTrack
BlobEvent
CanvasCaptureMediaStream
ConstrainBoolean
ConstrainDOMString
ConstrainDouble
ConstrainLong
DoubleRange
HTMLCanvasElement.captureStream()
LongRange
MediaDevices
MediaStream
MediaStreamTrackEvent
MediaTrackCapabilities
MediaTrackConstraints
MediaTrackSettings
MediaTrackSupportedConstraints
Navigator.mediaDevices
NavigatorUserMedia
NavigatorUserMediaError
VideoStreamTrack
navigator.mediaDevices.getUserMedia()