问题描述
我正在开发适用于 Android 的 WebRTC.并成功创建和建立会议.使用单个 MediaStream 和多个 PeerConnection.
I'm working on WebRTC for Android. And successful create and establish Conference. Using single MediaStream and several PeerConnection.
现在我想找到一种更好的方法,其中之一是中继连接.我的问题是,按照 Chromium 报告 中所述的板条箱中继.我应该做同样的事情,但有几个问题.那么让我们开始吧.
Now I want to find a better way, and one of them it's relay connection. My question is, crating relay as described on Chromium Report. And I supposed to do same thing, but there several issues. So lets start.
- 建立成功的对等连接.(A -> B)
- 使用另一个对等连接 (B -> C) 中继远程媒体流.
- 中继媒体流 (A ->-> C) 应在最终端点上播放.
那么对于用户B,我们应该从用户A的PeerConnection中获取远程流,并将流添加到用户C的PeerConnection中.它是如何用Java库制作的?
So for User B, we should take remote stream from PeerConnection of User A, and add stream to the PeerConnection of User C. And how it make with Java library?
// Local Media Stream, just as example for this question
// Local stream of current User B
MediaStream mediaStream = new MediaStream(...);
PeerConnection peerA = new PeerConnection(...);
PeerConnection peerC = new PeerConnection(...);
peerA.addStream(mediaStream);
peerB.addStream(mediaStream);
// Now this User (User B) can here User A and B
// Connection successful establish.
// Here is question, how I can fetch remote
// MediaStream object from PeerConnection A?
如何从 PeerConnection A 获取远程 MediaStream 对象并将它们添加到另一个 PeerConnection C?
我也尝试过,从 PeerConnection 获取 RTPSender 和 RTPReceiver.之后,我可以访问远程站点的 MediaStreamTrack.但是我不能把这个对象放到另一个 PeerConnection 上.
What I also tried to do, its fetching RTPSender and RTPReceiver from PeerConnection. After that I can access to the MediaStreamTrack of remote site. But I cannot put this object to the other PeerConnection.
推荐答案
您将通常从 pc.onaddstream
获得的流送入视频元素,而不是 pc.addStream
到一个新的对等连接.
You take the stream you normally get from pc.onaddstream
which you fed to a video element, and instead pc.addStream
it to a new peer connection.
WebRTC 示例有一个示例,涵盖了使用像这样的多个继电器.
The WebRTC samples have an example that covers using multiple relays like this.
这篇关于WebRTC 将远程流添加到 PeerConnection的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!