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.endedRead only- Is a Boolean value with a value of
trueif theendedevent has been fired on the object, meaning that the stream has been completely read, orfalseif the end of hte stream has not been reached.
MediaStream.idRead only- Is a
DOMStringcontaining 36 characters denoting a unique identifier (GUID) for the object.
Event handlers
MediaStream.onaddtrack- Is a
EventHandlercontaining the action to perform when anaddtrackevent is fired on the object, that is when a newMediaStreamTrackobject is added. MediaStream.onended- Is a
EventHandlercontaining the action to perform when anendedevent is fired on the object, that is when the streaming is terminating. MediaStream.onremovetrack- Is a
EventHandlercontaining the action to perform when anremovetrackevent is fired on the object, that is when aMediaStreamTrackobject is removed from it.
Methods
MediaStream.addTrack()- Stores a copy of the
MediaStreamTrackgiven as argument. If the track has already been added to theMediaStreamobject, nothing happens; if the track is in thefinishedstate, that is has already reached its end, the exceptionINVALID_STATE_RAISEis raised.
MediaStream.clone()- Return a clone of the
MediaStreamobjet. 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
MediaStreamTrackstored in theMediaStreamobject that have theirkindattribute 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
MediaStreamTrackstored in theMediaStreamobject that have theirkindattribute 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
MediaStreamTrackgiven as argument. If the track is not part of theMediaStreamobject, nothing happens; if the track is in thefinishedstate, that is has already reached its end, the exceptionINVALID_STATE_RAISEis 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
trueif the track is enabled, that is allowed to render the media source stream; orfalseif 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.idRead only- Returns a
DOMStringcontaining a unique identifier (GUID) for the track; it is generated by the browser. MediaStreamTrack.kindRead only- Returns a
DOMStringset 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.labelRead only- Returns a
DOMStringcontaining 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.mutedRead only- Returns a Boolean value with a value of
trueif the track is muted,falseotherwise. MediaStreamTrack.readonlyRead only- Returns a Boolean value with a value of
trueif the track is readonly (such a video file source or a camera that settings can't be modified),falseotherwise. MediaStreamTrack.readyStateRead 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.enabledattribute."ended"which indicates that the input is not giving any more data and will never provide new data.
MediaStreamTrack.remoteRead only- Returns a boolean value with a value of
trueif the track is sourced by aRTCPeerConnection,falseotherwise.
Event handlers
MediaStreamTrack.onstarted- Is a
EventHandlercontaining the action to perform when anstartedevent is fired on the object, that is when a newMediaStreamTrackobject is added. MediaStreamTrack.onmute- Is a
EventHandlercontaining the action to perform when anmuteevent is fired on the object, that is when the streaming is terminating. MediaStreamTrack.onunmute- Is a
EventHandlercontaining the action to perform when anunmuteevent is fired on the object, that is when aMediaStreamTrackobject is removed from it. MediaStreamTrack.onoverconstrained- Is a
EventHandlercontaining the action to perform when anoverconstrainedevent is fired on the object, that is when aMediaStreamTrackobject is removed from it. MediaStreamTrack.oneended- Is a
EventHandlercontaining the action to perform when anendedevent is fired on the object, that is when aMediaStreamTrackobject 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: ...
随机推荐
- apache虚拟主机的设置
方法一: 首先打开apache中conf下的http.conf文件打开虚拟主机的注释:如下去掉第二行前面的#即可 # Virtual hosts# Include conf/extra/httpd-v ...
- JS正则表达式验证数字非常全
<script type="text/javascript"> function validate(){ var reg = new RegExp("^[0- ...
- JZ2440开发笔记(9)——位置无关代码设计【转】
b MAIN 和 ldr pc,=MAIN 的区别(谈到代码位置无关性) 看bootloader的时候经常看到这两种写法,不太明白区别,网上查了查.其实看了之后还是一头雾水? 其中,2和3 似乎是一个 ...
- tomcat 服务器全解
①B/S.C/S比较 ⑴C/S C/S结构即客户端/服务器(Client/Server),例如QQ: 需要编写服务器端程序,以及客户端程序,例如我们安装的就是QQ的客户端程序: 缺点:软件更新时需要同 ...
- ios之UI中自定义cell
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- codeforces 664A Complicated GCD
水题..[a,b]区间数的最大公约数. a==b输出a 否则输出1 #include<cstdio> #include<cstring> #include<iostrea ...
- HW1.1
public class Solution { public static void main(String[] args) { System.out.println("Welcome to ...
- Shell的那些事儿
日常工作中,哪种语言对你的帮助最大?我觉得非Shell莫属.最早接触Shell应该是在大学的时候,如做Linux文件系统裁减会用到一些命令,如find, tar, xargs, cp等等,并把它们通过 ...
- Redis学习资料汇总(荐)
Redis学习手册系列: http://www.cnblogs.com/stephen-liu74/category/354125.html Redis详解:sorted sets数据类型及操作-IT ...
- Linq to SQL 简单增删改查
用Linq大大减少了对数据库的一般操作所需的编码量.运行下面事例之前,首先建一个叫做Alien的数据库表. CREATE TABLE [dbo].[Aliens]( [Id] [int] IDE ...