基於Janus房間服務器的POC對講實現

一、理解Janus插件janus_videoroom的包轉發實現
該插件模式具備SFU的包轉發能力,每一個進入房間的與會者,可以通過Publish發佈自己的音視頻,也可以通過Subscribe訂閱其他人的音視頻,轉發能力由libnice庫提供

二、理解POC對講半雙工模式下的包轉發實現
POC,是PTT Over Cell 的簡寫,PTT是按下講話的意思,要麼說,要麼聽別人說,不會出現同時講話&聽的情況,所以類似半雙工的通信方式;如果還沿用janus_videoroom的實現,如果有N個人參與的會議室,那麼每個與會者都需要訂閱其他N-1個人聲音,會有N-1條下行信道,但每次只有一個信道可用,這對信道資源來說是明顯的浪費,所以,我們希望改造成MCU模式,但又不需要做服務器端的混音操作,完成POC的業務對講能力

三、最後實現
1、給房間增加一個公共的publish對象,所有對房間的訂閱都是訂閱該publish對象,達到支持 從SFU模式到支持MCU轉發模式(適應POC對講模式的MCU模式)
2、支持會場TBCP控制信息通過DataChannel通道傳遞
3、支持會場TBCP控制和會場通知 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章