首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RTCMultiConnection回到当前流

RTCMultiConnection回到当前流
EN

Stack Overflow用户
提问于 2017-02-19 11:34:21
回答 1查看 425关注 0票数 1

我正在使用RTCMultiConnection v3插件,我想不出如何重新打开当前流。

设想情况;

UserA打开凸轮,自动将流附加到$("#webcam")。溪流是开放的。

UserA想加入UserB,做connection.join("UserB") (假装UserB也有一个凸轮流)。现在,这个html() to $("#webcam")所以UserA $(“#webcam”)‘被UserB流覆盖了,但是UserA流是活的。到目前一切尚好。

现在,我想重新追加UserA流,就像UserA做的那样,connection.join("UserA")是他自己的流。

我希望有人知道怎么做?我不想重开整条小溪。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-19 14:11:26

打开房间的人,不得加入同一房间。

您可以使用以下方法访问视频(媒体流):

1)如果您知道“视频-id”通常称为“流-id”

代码语言:javascript
复制
var streamEvent = connection.streamEvents['stream-id'];
var mediaStreamObject = streamEvent.stream;
var videoFreshURL = URL.createObjectURL(mediaStreamObject);
yourVideo.src = videoFreshURL;

2)如果您知道远程用户的唯一ID(通常命名为"userid“)

代码语言:javascript
复制
var userPeer = connection.peers['user-id'].peer;
var allIncomingVideos = userPeer.getRemoteStreams();
var firstIncomingVideo = allIncomingVideos[0];
var firstVideoFreshURL = URL.createObjectURL(firstIncomingVideo);
yourVideo.src = firstVideoFreshURL;

3)将事件视频存储在自己的对象中

代码语言:javascript
复制
window.yourOwnGlobalObject = {};
connection.onstream = function(event) {
   window.yourOwnGlobalObject[event.userid] = event;
   document.body.appendChild( event.mediaElement );
};

function getUserXYZVideo(userid) {
    var userVideo = window.yourOwnGlobalObject[userid].mediaElement;
    // var userStream = window.yourOwnGlobalObject[userid].stream;
    return userVideo;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42326728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档