Webrtc禁用轨道无法关闭摄像头

时间:2020-06-17 08:08:38

标签: webrtc mediastream

我正在尝试使用webRTC实现切换视频功能。请参考以下代码:

<video id="remote" autoPlay></video>
<button onclick="toggleVideo()">Toggle video</button>
let localVideo = document.querySelector('#local');

const toggleVideo = () => {
    localVideo.srcObject.getVideoTracks()[0].enabled = !localVideo.srcObject.getVideoTracks()[0].enabled
}

这将关闭Firefox中的视频和摄像头指示器,但不会关闭chrome中的摄像头指示器。 Chrome仅关闭视频。

根据MDN文档

如果MediaStreamTrack表示从摄像机输入的视频,则通过将其设置为false来禁用轨道,还会更新设备活动指示符,以显示该摄像机当前不在录制或正在流式传输。例如,当以这种方式将轨道静音时,iMac和MacBook计算机中的摄像头旁边的绿色“正在使用”指示灯将熄灭。

MDN docs 还有其他解决方法吗?

0 个答案:

没有答案