使用jssip库搭建音视频对讲时,一对一的音视频通了,但是多人视频会议怎么获取视频流并显示在页面的video上?
我目前写的监听:
userAgent.on("newRTCSession", (e) => {
let newsession = e.session
newSession.on("confirmed", (e) => {
const addTrack = (tracks, stream) => {
console.log('tracks', tracks)
console.log('stream', stream)
for (let i = 0; i < tracks.length; i++) {
stream.addTrack(tracks[i].track);
}
}
if(newSession.connection.getSenders()){
console.log('自己的流');
const localVideoStream = new MediaStream();
const localVideo = that.$refs.localVideo
localVideo.srcObject = localVideoStream;
addTrack(newSession.connection.getSenders(), localVideoStream);
localVideo.play();
}
const remoteVideoStream = new MediaStream()
const remoteVideo = that.$refs.remoteVideo
remoteVideo.srcObject = remoteVideoStream
addTrack(newSession.connection.getReceivers(), remoteVideoStream)
remoteVideo.play()
})
});
我现在这样写,当多人进入的时候,别人的视频就都放在一个video标签里了,而且只显示一个,不会把多个人的视频显示出来,需要怎么写呢?有没有大佬知道的赐教赐教
所有代码都写在这了
解决了,直接上面的写法不变,修改一下freeswitch的配置:
1、在default.xml添加:
2、在conference.conf.xml添加
<param name="video-mode" value="mux"/>
参考文档:https://blog.csdn.net/jia198810/article/details/118070169?ops...