mediasoup-demo安裝記錄


環境CentOS 7 64位 VMWare12虛擬機(win10主機),安裝好NodeJS 10.13(大於8.9就可以)

已按照GitHub說明拉下來代碼,配置好Node環境,開始執行npm start,前面具體步驟不再說明,直接從遇見的錯誤開始

錯誤1、gcc版本過低

 gcc默認4.8.5版本,需要升級

很多博客上的下載源碼編譯的太麻煩了,終於找到一個簡單的,3步完成升級:https://cloud.tencent.com/developer/article/1471685

不過,這個好像不是永久性的,每使用都需要這么干一下 -_-,記到這里方便復制

sudo yum install centos-release-scl
sudo yum install devtoolset-7-gcc*
scl enable devtoolset-7 bash
which gcc
gcc --version

錯誤2、文件未找到

 ll 看一下發現 mediasoup@3.2.5 目錄沒有下載下來

並且最有一步提示 clang-tools-r298696-linux.tgz下載時權限不夠

所以直接 rm -rfnode_modeles目錄

重新 sudo npm install

然后開始下載編譯RTC相關的東西,耗時幾分鍾

后面有一次sudo npm忽然就找不到命令了,不知道什么操作導致的,原因就是sudo執行的是/usr/bin下的程序,普通命令執行的是環境變量下的程序,如果兩者不一致,sudo就會報找不到

所以程序如果沒有安裝在/usr/bin下,一定要在下面建個對應的軟連接(快捷方式),參考這里

 編譯結束,install 完成,耗時6分鍾

 然后再cd到app目錄下install一下,這個倒是沒什么錯誤

cd到server下npm start-->

錯誤3、日志級別屬性未定義

 也就是這個東西

該屬性來自於config.js配置文件,打開config.js發現根本沒有定義這些屬性,而config.example.js中正確定義,可能是復制文件的時候手殘沒有切換分支,把V1分支的復制了過來,重新復制一份配置文件

重新npm start,服務啟動成功

 然后啟動app,4個error

 翻譯一下,大體意思是說 “可能的競爭條件:可能基於過時的window.SHOW_INFO值重新分配了window.SHOW_INFO”(機翻)。

也就是說這幾個參數設置錯誤,不過服務仍然啟動完成

 CentOS自帶的火狐瀏覽器會自動打開該網址,然而。。。自動給我屏蔽了

不知道為什么設置瀏覽器配置后還是無法訪問(其實點詳細了解->添加例外就可以了,然而虛擬機沒有攝像頭和麥克風,所以看不到),所以使用Windows上瀏覽器訪問,懶得配置Linux的端口就直接關閉防火牆,否則Windows訪問不到3000端口

然而,,,,Windows Chrome也給我攔了,沒有證書的假的https是無法被認可的(哈哈哈)

 還好可以點擊“高級”,“繼續前往”,就可以成功訪問了,允許打開攝像頭麥克風,顯示如下

錯誤4、IP地址未設置 

明顯又有錯誤,不過已經成功跑起來了( ̄_ ̄|||)

看服務端server打印信息發現room error

 端口綁定失敗

mediasoup:ERROR:worker[pid:24307] RTC::PortManager::Bind() | throwing MediaSoupError: port bind failed due to address not available [udp:1.2.3.4, attempt:1] +3m
mediasoup:WARN:Channel[pid:24307] request failed [method:router.createWebRtcTransport, id:20]: port bind failed due to address not available [udp:1.2.3.4, attempt:1] +3m

是配置文件中webRtcTransportOptions相關參數沒有改過來

 改為自己服務器的IP,然后重啟server,一切正常,就可以看到如下效果了

至此安裝完成,當然這是本地訪問,要部署在公網server上的話還需要按說明略作調整。

關於mediasoup一些很有用的例子:https://mediasoup.org/documentation/examples/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM