按我的理解,从我刚才的问题:Kurento: STUN/TURNKurento:客户端TURN配置
从webrtcendpoint.conf.ini
配置的TURN服务器仅用于交换的冰候选人。我们还可以在webrtcendpoint.conf.ini
中指定一个TURN服务器,因为我观察到的是如果我在webrtcendpoint.conf.ini
中提供了2个或更多TRUN服务器,Kurento媒体服务器服务无法启动,这是正确的吗?
还有什么方法可以验证哪些STUN/TURN服务器在Kurento媒体服务器和两个对等设备之间使用?
我们在conferenceroom.js
中提供的STUN/TURN将用于同级之间的实际媒体流/媒体管道。它是否正确 ?
如果我们在conferenceroom.js
中提供了多个TURN服务器,那么TURN服务器最快/最快的响应时间将被选择用于两个对等设备之间的媒体流?与我们从Link获得响应时间相同。
也是我所观察到的是,如果在webrtcendpoint.conf.ini
和conferenceroom.js
提供的TURN服务器不同,那么我们是不是能够看到远程参与者的视频,但如果两个TURN服务器是一样的话,我能看到远程参与者的视频。它是否正确 ?
编辑1:
在groupcall样本示例中,我们onExistingParticipants()
和onNewParticipants()
,我们可以在receiveVideo()
和onExistingParticipants()
定义iceServers如果我们kurentoUtils.WebRtcPeer.WebRtcPeerSendOnly()
指定TURN服务器T1和TURN服务器T2所以会发生什么 in kurentoUtils.WebRtcPeer.WebRtcPeerRecvOnly()
那么这两个TURN服务器之间会如何互相通信作为中继链?
感谢您的回复,我想实现是强制的媒体两个方向上使用TURN服务器流。此外,如果我从世界的多个位置提供TURN服务器,并且有人试图加入此组呼,则由ICE候选人使用/分配的TURN服务器将是距离用户最近的一个。这可以通过在'conferenceroom,js'中提供TURN服务器列表来实现吗? –
“TURN服务器不会直接通信,因为它们将作为从一台服务器发送到另一台服务器的媒体的中继”,这是否意味着两台TURN服务器可以相互之间进行中继? 你也可以告诉我们在'conferenceroom.js'中指定TURN服务器时使用的'webrtcendpoint.conf.ini'中的TURN服务器在哪里。 –
这是一个错字。转向服务器不交换媒体,它们充当从同伴发送的媒体的中继。由于[您的其他问题](https://stackoverflow.com/questions/37162476/kurento-stun-turn)中明确指出,除非您这么做,否则不会共享STUN/TURN配置。同行(和KMS只是另一个同伴)可以有不同的STUN/TURN配置。 – igracia