如何解决当两个人加入我的Twilio视频室时,只有一个参与者接收音频和视频?
参与者2每次出现时,他们的音频和摄像机记录都会出现在参与者1的屏幕上。但是,参与者1的音频/视频不会显示在参与者2的屏幕上。那么,谁是第一个加入视频和音频的人,就不会传送给其他参与者?
<h1>Hi there!</h1>
<div class="videos">
<div id="video-container"></div>
</div>
<div id="remote-media-div">
</div>
<?php
include('./vendor/autoload.php');
include('./config.php');
use Twilio\Jwt\AccessToken;
use Twilio\Jwt\Grants\VideoGrant;
// Use identity and room from query string if provided
$identity = isset($_GET["identity"]) ? $_GET["identity"] : "identity" . rand();
$room = isset($_GET["room"]) ? $_GET["room"] : "testingreal";
// Create access token,which we will serialize and send to the client
$token = new AccessToken(
$TWILIO_ACCOUNT_SID,$TWILIO_API_KEY,$TWILIO_API_SECRET,3600,$identity
);
// Grant access to Video
$grant = new VideoGrant();
$grant->setRoom($room);
$token->addGrant($grant);
echo $token->toJWT();
?>
<script src="//media.twiliocdn.com/sdk/js/video/releases/2.7.3/twilio-video.min.js"></script>
<script>
var Video = Twilio.Video;
console.log(Video);
var connect = Video.connect;
Video.connect('<?=$token->toJWT()?>',{ name: 'testingreal' }).then(room => {
console.log('Conmnected to Room "%s"',room.name);
room.on('participantConnected',participant => {
console.log(`Participant "${participant.identity}" connected`);
console.log('testing 213');
participant.tracks.forEach(publication => {
if (publication.isSubscribed) {
const track = publication.track;
document.getElementById('remote-media-div').appendChild(track.attach());
}
});
participant.on('trackSubscribed',track => {
document.getElementById('remote-media-div').appendChild(track.attach());
});
});
});
我在会议室中插入的日志。on('participantConnected',参与者=> {//代码}在我作为参与者1首次加入会议室时没有显示。但是我注意到,一旦参与者2显示了日志确实出现了,所以我想知道如何设置room.on('participantConnected')代码以在第一个参与者而不是第二个参与者加入时立即执行。
解决方法
Twillio视频仅基于对等连接。 一个房间中要有超过2〜4个以上的用户,应基于SFU和MCU方法。
这是更多详细信息的链接。
- [https://medium.com/linagora-engineering/scalability-in-video-conferencing-part-1-276f52b4acac]
p2p连接始终可以与1:1连接一起很好地工作,但是正如您在上面的文章中可以读到的那样,它应该基于SFU或MCU才能有3个以上的参与者。 实际上,视频群聊和缩放也是基于MCU的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。