RTCPeerConnection.ontrack

这篇翻译不完整。请帮忙从英语翻译这篇文章

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

RTCPeerConnection.ontrack 属性是一个 EventHandler 此属性指定了在RTCPeerConnection接口上触发 track 事件时调用的方法。该方法接收一个RTCTrackEvent类型的event对象,该event对象将在MediaStreamTrack被创建时或者是关联到已被添加到接收集合的RTCRtpReceiver对象中时被发送。

语法

RTCPeerConnection.ontrack = eventHandler;

参数

ontrack设置为你提供的一个输入RTCTrackEvent对象用于描述新的track将如何使用的方法。这一信息包含了代表新track的MediaStreamTrack对象、RTCRtpReceiver对象、RTCRtpTransceiver对象以及一个MediaStream对象列表,该对象列表表示该track是那个媒体流的一部分。

示例

本示例,从这篇文章的代码和视频调用的代码中,将传入的轨迹连接到将用于显示传入<video>元素。

pc.ontrack = function(event) {
  document.getElementById("received_video").srcObject = event.streams[0];
  document.getElementById("hangup-button").disabled = false;
};

在第一行代码中,我们的ontrack 事件处理器获取传入的第媒体流数组中的第一个,并赋值给video元素的srcobject 。这样媒体流就和页面中的video元素结合起来以便于呈现给用户。第二行代码简单启用了“挂断”按钮,用户可以使用它去断开呼叫。

说明

说明 状态 注释
WebRTC 1.0: Real-time Communication Between Browsers
RTCPeerConnection.ontrack
Candidate Recommendation 初始规范

各浏览器兼容性

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!

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

[1] 在Firefox 45中引入了onaddtrack;在Firefox 46中重命名为ontrack

参见

文档标签和贡献者

此页面的贡献者: track_vovo
最后编辑者: track_vovo,