MediaStream
接口是一个媒体内容的流.。一个流包含几个轨道,比如视频和音频轨道。
属性
MediaStream.ended
只读
- 布尔型。如果
ended
事件在这个对象上触发了,也就是说这个流已经被完全读取,值为true。 如果还没有到达这个流的尾部,值为false。
MediaStream.id
只读
- 这是一个包含36个字符的
DOMString
,用来作为这个对象的唯一标识符 (GUID) 。
事件处理
MediaStream.onaddtrack
- 这是
addtrack
事件在这个对象上触发时调用的事件处理器[EventHandler
],这时一个MediaStreamTrack
对象被添加到这个流。
MediaStream.onended
- 这是当流终止[
ended
]时触发的事件。
MediaStream.onremovetrack
- 这是
removetrack
事件在这个对象上触发事调用的事件处理器[EventHandler
],这时一个对象从流上移除。
方法
MediaStream.addTrack()
- 存储传入参数
MediaStreamTrack
的一个副本。如果这个轨道已经被添加到了这个媒体流,什么也不会发生; 如果目标轨道为“完成”状态(也就是已经到尾部了),一个INVALID_STATE_RAISE异常会产生。
MediaStream.clone()
- 返回这个
MediaStream对象的克隆版本。返回的版本会有一个新的ID。
- 返回给定ID的轨道。如果没有参数或者没有指定ID的轨道,将返回null。如果有几个轨道有同一个ID,将返回第一个。
MediaStream.getAudioTracks()
- 返回流中kind属性为"audio"的
MediaStreamTrack
列表。顺序是不确定的,不同浏览器间会有不同,每次调用也有可能不同。
MediaStream.getTrackById()
- 返回给定ID的轨道。如果没有参数或者没有指定ID的轨道,将返回null。如果有几个轨道有同一个ID,将返回第一个。
MediaStream.getVideoTracks()
- 返回流中kind属性为"video"的
MediaStreamTrack
列表。顺序是不确定的,不同浏览器间会有不同,每次调用也有可能不同。
MediaStream.removeTrack()
- 移除作为参数传入的
MediaStreamTrack
。 如果这个轨道不在MediaStream对象中什么也不会发生;
如果目标轨道为“完成”状态,一个INVALID_STATE_RAISE异常会产生。
说明
浏览器支持情况
特性 |
Chrome |
Firefox (Gecko) |
Internet Explorer |
Opera |
Safari (WebKit) |
Basic support |
(Yes) |
(Yes) |
未实现 |
未实现 |
? |
getAudioTracks() and getVideoTracks() |
(Yes) |
23.0 (23.0) |
未实现 |
未实现 |
? |
id |
(Yes) |
41.0 (41.0) |
? |
? |
? |
ended , label , and stop() |
未实现 [1] |
|
|
|
|
特性 |
Android |
Android Webview |
Firefox Mobile (Gecko) |
IE Phone |
Opera Mobile |
Safari Mobile |
Chrome for Android |
Basic support |
? |
(Yes) |
(Yes) |
未实现 |
未实现 |
? |
(Yes) |
getAudioTracks() and getVideoTracks() |
? |
(Yes) |
23.0 (23.0) |
未实现 |
未实现 |
? |
(Yes) |
id |
? |
(Yes) |
41.0 (41.0) |
? |
? |
? |
(Yes) |
ended , label , and stop() |
? |
未实现 [1] |
|
|
|
|
未实现 [1] |
[1] 在Chrome 45中已标为过时, 在Chrome 47中移除.
相关内容
- Using the MediaStream API
文档标签和贡献者