webrtc学习——mediaStream和MediaStreamTrack
This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the spec changes.
The MediaStream
interface represents a stream of media content. A stream consists of several tracks, like video or audio tracks.
Attributes
MediaStream.ended
Read only- Is a Boolean value with a value of
true
if theended
event has been fired on the object, meaning that the stream has been completely read, orfalse
if the end of hte stream has not been reached.
MediaStream.id
Read only- Is a
DOMString
containing 36 characters denoting a unique identifier (GUID) for the object.
Event handlers
MediaStream.onaddtrack
- Is a
EventHandler
containing the action to perform when anaddtrack
event is fired on the object, that is when a newMediaStreamTrack
object is added. MediaStream.onended
- Is a
EventHandler
containing the action to perform when anended
event is fired on the object, that is when the streaming is terminating. MediaStream.onremovetrack
- Is a
EventHandler
containing the action to perform when anremovetrack
event is fired on the object, that is when aMediaStreamTrack
object is removed from it.
Methods
MediaStream.addTrack()
- Stores a copy of the
MediaStreamTrack
given as argument. If the track has already been added to theMediaStream
object, nothing happens; if the track is in thefinished
state, that is has already reached its end, the exceptionINVALID_STATE_RAISE
is raised.
MediaStream.clone()
- Return a clone of the
MediaStream
objet. The clone will have a new id value. - Returns the track whose id corresponds to the one given in parameters,
trackid
. If no parameter is given, or if no track with that id does exists, it returnsnull
. If several tracks have the same id, it returns the first one.
MediaStream.getAudioTracks()
- Returns a list of the
MediaStreamTrack
stored in theMediaStream
object that have theirkind
attribute set to"audio"
. The order is not defined, and may vary from one browser to an other, but also from one call to the method to another.
MediaStream.getTrackById()
- Returns the track whose id corresponds to the one given in parameters,
trackid
. If no parameter is given, or if no track with that id does exists, it returnsnull
. If several tracks have the same id, it returns the first one.
MediaStream.getVideoTracks()
- Returns a list of the
MediaStreamTrack
stored in theMediaStream
object that have theirkind
attribute set to"video"
. The order is not defined, and may vary from one browser to an other, but also from one call to the method to another.
MediaStream.removeTrack()
- Removes the
MediaStreamTrack
given as argument. If the track is not part of theMediaStream
object, nothing happens; if the track is in thefinished
state, that is has already reached its end, the exceptionINVALID_STATE_RAISE
is raised.
MediaStreamTrack
Summary
The MediaStream
interface represents a stream of media content. A stream consists of several tracks, like video or audio tracks.
Properties
MediaStreamTrack.enabled
- Is a Boolean value with a value of
true
if the track is enabled, that is allowed to render the media source stream; orfalse
if it is disabled, that is not rendering the media source stream but silence and blackness. If the track has been disconnected, this value can be changed but has no more effect. MediaStreamTrack.id
Read only- Returns a
DOMString
containing a unique identifier (GUID) for the track; it is generated by the browser. MediaStreamTrack.kind
Read only- Returns a
DOMString
set to"audio"
if the track is an audio track and to"video"
, if it is a video track. It doesn't change if the track is deassociated from its source. MediaStreamTrack.label
Read only- Returns a
DOMString
containing a user agent-assigned label that identifies the track source, as in"internal microphone"
. The string may be left empty and is empty as long as no source has been connected. When the track is deassociated from its source, the label is not changed. MediaStreamTrack.muted
Read only- Returns a Boolean value with a value of
true
if the track is muted,false
otherwise. MediaStreamTrack.readonly
Read only- Returns a Boolean value with a value of
true
if the track is readonly (such a video file source or a camera that settings can't be modified),false
otherwise. MediaStreamTrack.readyState
Read only- Returns an enumerated value giving the status of the track.It takes one of the following values:
"live"
which indicates that an input is connected and does its best-effort in providing real-time data. In that case, the output of data can be switched on or off using theMediaStreamTrack.enabled
attribute."ended"
which indicates that the input is not giving any more data and will never provide new data.
MediaStreamTrack.remote
Read only- Returns a boolean value with a value of
true
if the track is sourced by aRTCPeerConnection
,false
otherwise.
Event handlers
MediaStreamTrack.onstarted
- Is a
EventHandler
containing the action to perform when anstarted
event is fired on the object, that is when a newMediaStreamTrack
object is added. MediaStreamTrack.onmute
- Is a
EventHandler
containing the action to perform when anmute
event is fired on the object, that is when the streaming is terminating. MediaStreamTrack.onunmute
- Is a
EventHandler
containing the action to perform when anunmute
event is fired on the object, that is when aMediaStreamTrack
object is removed from it. MediaStreamTrack.onoverconstrained
- Is a
EventHandler
containing the action to perform when anoverconstrained
event is fired on the object, that is when aMediaStreamTrack
object is removed from it. MediaStreamTrack.oneended
- Is a
EventHandler
containing the action to perform when anended
event is fired on the object, that is when aMediaStreamTrack
object is removed from it.
Methods
MediaStreamTrack.getConstraints()
MediaStreamTrack.applyConstraints()
MediaStreamTrack.getSettings()
MediaStreamTrack.getCapabilities()
MediaStreamTrack.clone()
MediaStreamTrack.stop()
- Stops playing the source associated to the track, both the source and the track are deassociated. The track state is set to
ended
.
Specifications
Specification | Status | Comment |
---|---|---|
Media Capture and Streams The definition of 'MediaStreamTrack' in that specification. |
Candidate Recommendation | Initial definition |
https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack
https://developer.mozilla.org/en-US/docs/Web/API/MediaStream
webrtc学习——mediaStream和MediaStreamTrack的更多相关文章
- WebRTC学习笔记_Demo收集
1. WebRTC学习 1.1 WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源代码中增加了webrtc源代码,放在/external/w ...
- WebRTC学习
1. WebRTC学习 1.1 WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源码中加入了webrtc源码,放在/external/web ...
- WebRTC学习与DEMO资源一览
一. WebRTC学习 1.1 WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源码中加入了webrtc源码,放在/external/webrtc/ ...
- [转]webrtc学习: 部署stun和turn服务器
[转]webrtc学习: 部署stun和turn服务器 http://www.cnblogs.com/lingdhox/p/4209659.html webrtc的P2P穿透部分是由libjingle ...
- WebRTC学习之九:摄像头的捕捉和显示
较新的WebRTC源代码中已经没有了与VoiceEngine结构相应的VidoeEngine了,取而代之的是MeidaEngine.MediaEngine包括了MediaEngineInterface ...
- webrtc学习———记录三:mediaStreamTrack
参考: https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack 转自http://c.tieba.baidu.com/p/3 ...
- webrtc学习——RTCPeerConnection
The RTCPeerConnection interface represents a WebRTC connection and handles efficient streaming of da ...
- webrtc 学习资源 http://www.cnblogs.com/lingyunhu/p/3578218.html
Realtime/Working WebRTC Experiments It is a repository of uniquely experimented WebRTC demos; writte ...
- WebRTC学习资料大全
在学习WebRTC,找了些资料,记录一下,供以后查询. 有些需要FQ才能看 WebRTC 介绍 官网在这里:https://webrtc.org/.然后这里有一个官方的Getting Started: ...
随机推荐
- js模块,类,继承,命名空间,私有属性等相关概念梳理
js确切的说是一种基于对象的语言,和纯面向对象的语言(比如as)稍微有点区别,js中没有类的概念.虽然有继承但是基于原型的继承.随着前段越来越受重视,jser们利用js的一些特性他们制造出了和纯面向对 ...
- c#抓取当前电脑显示分辨率
using System.Windows.Forms; 获取屏幕分辨率 int SH = Screen.PrimaryScreen.Bounds.Height; ...
- BZOJ2818: Gcd 莫比乌斯反演
分析:筛素数,然后枚举,莫比乌斯反演,然后关键就是分块加速(分块加速在上一篇文章) #include<cstdio> #include<cstring> #include< ...
- CentOS 安装nagios
Nagios的介绍: 1.Nagios是一个监控系统运行状态和网络信息的监控系统.它能监控所指定的本地或远程主机的系统状态以及运行的服务,同时提供异常通知的功能. 2. Nagios可运行在Linux ...
- 使用Windows Azure创建Linux系统虚拟机-下
如何将数据磁盘附加到新虚拟机 您的应用程序可能需要存储数据.要这样设置,您可以将数据磁盘添加到先前创建的虚拟机.要做到这一点,最简单的方法是将空数据磁盘连接到本机. 在Linux上,磁盘资源通常由Az ...
- UEditor 使用过程中问题
UEditor 百度的文本编辑器 具体详细信息请去百度文本编辑器官网,这里不多说了. 我使用的是 UBuilder 版本的NET版本 ,我只是需要图片上传功能,所以就做了最小化的定制.(可以在官 ...
- HW5.14
public class Solution { public static void main(String[] args) { System.out.printf("%s\t%s\n&qu ...
- 问题-[WIN8.132位系统]安装Win8.1 遇到无法升级.NET Framework 3.5.1
问题现象:安装Win8后都遇到了无法升级.NET Framework 3.5.1的问题,在线升级会遇到错误0x800F0906.这使得91手机助手等很多软件无法运行,更郁闷的是,网上几乎所有的解决办法 ...
- BOM 和 JavaScript 中的 trim
今天遇到一个 IE7 下 JSON.parse 失败的问题.经过排查发现:服务端某个配置文件编码是 UTF-8 + BOM,输出的字符串最开始包含了 BOM 字符,不是合法的 JSON. IE7 不支 ...
- Robot Framework自动化测试(三)--- 封装系统关键字
之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和pyt ...