RTCPeerConnection.removeStream()

Experimental: 这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

RTCPeerConnection.removeStream() 方法用来移除本地音频或视频的 媒体流 。 如果已经发生交互,远程主机可能需要使用一个新的媒体流。

signalingState (en-US) 的值为"closed"时,将抛出InvalidStateError异常。当  signalingState (en-US) 值为"stable"时, 将触发RTCPeerConnection的 negotiationneeded 事件。

语法

pc.removeStream(mediaStream);

此方法没有返回值。

参数

mediaStream
MediaStream 类型的表示要移除的媒体流

例子

var pc, videoStream;
navigator.getUserMedia({video: true}, function(stream) {
  pc = new RTCPeerConnection();
  videoStream = stream;
  pc.addStream(stream);
}
document.getElementById("closeButton").addEventListener("click", function(event) {
  pc.removeStream(videoStream);
  pc.close();
}, false);

规范

Specification Status Comment
WebRTC 1.0: Real-time Communication Between Browsers
RTCPeerConnection.removeStream()
Candidate Recommendation Initial specification.

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help! (en-US)

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) [1] (Yes) [1] 未实现 (Yes) ?
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? ? ? 未实现 ? ?

[1] Though this property is not prefixed, the interface it belongs to is.

扩展阅读