如何在WebRtc中关闭peerConnection

use*_*512 3 webrtc getusermedia

WebRtc示例

如果我按下通话,上部屏幕会显示允许/拒绝菜单.当我按下允许时,Chrome会开始在标题中显示红色圆圈,表示麦克风处于活动状态.其他Chromes选项卡中的所有其他声音都被静音(例如YouTube视频).

当我按下挂起时,红色圆圈不会消失,第二个标签中的YouTube视频仍然静音.我必须按F5才能恢复呼叫前的状态.

是否有任何PeerConnection停止呼叫并停止麦克风录音?

Ben*_*ent 5

是的,"红灯"仍处于打开状态的原因是localstream收集的mediaStream对象(在该特定页面上调用)中的媒体轨道getusermedia仍在播放/活动.

要关闭媒体流并因此释放对本地媒体输入的任何保留,只需调用localstream.stop()将结束流并停止访问本地媒体输入.这将停止所有相关的媒体轨道.

您也可以通过调用stop()各个媒体轨道(从中获取getVideoTracksgetAudioTracks从中获取mediaStream)来完成此操作.

至于在其他页面/应用程序中拒绝的其他音频.这是处理该问题的crbug.

侧注意:如果正在通过peerConnection推送媒体,那么由于mediaStream更改,您可能不得不重新协商连接.