媒体流 (MediaStream)

MediaStream 接口是一个媒体内容的流.。一个流包含几个轨道,比如视频和音频轨道。

属性

MediaStream.active 只读
布尔型。如果这个流处于活动状态值为 true,反之为 false
MediaStream.ended 只读 This is an obsolete API and is no longer guaranteed to work.
布尔型。如果 ended 事件在这个对象上触发了,也就是说这个流已经被完全读取,值为 true。 如果还没有到达这个流的尾部,值为 false。
MediaStream.id 只读
这是一个包含 36 个字符的 DOMString ,用来作为这个对象的唯一标识符 (GUID) 。

事件处理

MediaStream.onaddtrack (en-US)
这是addtrack事件在这个对象上触发时调用的事件处理器 [event handler],这时一个MediaStreamTrack对象被添加到这个流。
MediaStream.onended
这是当流终止 [ended] 时触发的事件。
MediaStream.onremovetrack (en-US)
这是removetrack事件在这个对象上触发事调用的事件处理器 [event handler],这时一个对象从流上移除。

方法

MediaStream.addTrack()
存储传入参数 MediaStreamTrack 的一个副本。如果这个轨道已经被添加到了这个媒体流,什么也不会发生; 如果目标轨道为“完成”状态(也就是已经到尾部了),一个 INVALID_STATE_RAISE 异常会产生。
MediaStream.clone()
返回这个MediaStream 对象的克隆版本。返回的版本会有一个新的 ID。
返回给定 ID 的轨道。如果没有参数或者没有指定 ID 的轨道,将返回 null。如果有几个轨道有同一个 ID,将返回第一个。
MediaStream.getTracks()
返回流中所有的MediaStreamTrack列表。
MediaStream.getAudioTracks()
返回流中 kind 属性为"audio"的MediaStreamTrack列表。顺序是不确定的,不同浏览器间会有不同,每次调用也有可能不同。
MediaStream.getTrackById() (en-US)
返回给定 ID 的轨道。如果没有参数或者没有指定 ID 的轨道,将返回 null。如果有几个轨道有同一个 ID,将返回第一个。
MediaStream.getVideoTracks() (en-US)
返回流中 kind 属性为"video"的MediaStreamTrack列表。顺序是不确定的,不同浏览器间会有不同,每次调用也有可能不同。
MediaStream.removeTrack()
移除作为参数传入的 MediaStreamTrack。 如果这个轨道不在MediaStream 对象中什么也不会发生; 如果目标轨道为“完成”状态,一个 INVALID_STATE_RAISE 异常会产生。

说明

说明 状态 评论
Media Capture and Streams
MediaStream
Candidate Recommendation

浏览器支持情况

BCD tables only load in the browser

相关内容

  • Using the MediaStream API