一奸柬、webrtc的支持范圍:
1.對(duì)官方給出的范圍進(jìn)行了測(cè)試:(不排除demo代碼有問(wèn)題)
Chrome 34+ √
Chrome for Android ×
Firefox √
Native java Object-C 無(wú)條件冰啃,未測(cè)試
對(duì)于pc的版本window or mac 和 linux 都進(jìn)行了以上測(cè)試鲁僚,andriod機(jī)測(cè)試了小米和華為p8,拉流無(wú)聲音,黑屏
2.瀏覽器的支持:
- 1.audio和video標(biāo)簽,并且數(shù)據(jù)流是可傳輸?shù)?/li>
1.png
- 2.js的api支持冻晤,底層接口需要有RTCPeerConnection,RTCDataChannel绸吸,MediaStream(aka getUserMedia)
2.png
下面是兩個(gè)例子:
二鼻弧、webrtc現(xiàn)在可以做什么设江?
1.視頻的采集
視頻采集.png
2.視頻錄制(采集端流錄制)
https://simpl.info/mediarecorder/
3.照相
照相.png
4.加濾鏡
濾鏡.png
5.實(shí)現(xiàn)00熱愛(ài)的自拍,人臉識(shí)別
https://www.auduno.com/clmtrackr/examples/facedeform.html
人臉識(shí)別.png
6.類(lèi)似qq截圖的桌面截圖
這個(gè)只有代碼攘轩,需要接入叉存,尚未嘗試
https://github.com/niklasenbom/RecordingApp
7.音頻混合,類(lèi)似dj什么的度帮,英文是audio room 網(wǎng)上例子很多歼捏,但是我玩不轉(zhuǎn),需要人給普及一下音樂(lè)知識(shí)
8.錄音
錄音.png
9.聊天
例子太多了笨篷,不一一列舉了
10.png
10.游戲
https://www.cubeslam.com/podjhc
11.類(lèi)似百度云的文件分享
分享一個(gè)文件給好友瞳秽,這個(gè)場(chǎng)景可以和云盤(pán)結(jié)合起來(lái),擴(kuò)大信息傳播范圍
三冕屯、集成了webrtc的第三方庫(kù)寂诱,可以提供哪些服務(wù)拂苹?
基礎(chǔ)的視頻服務(wù)
1對(duì)1視頻:
https://123.56.176.151:3001/ 兩個(gè)人都加入一個(gè)房間id中即可
1對(duì)多視頻:
https://123.56.176.151:3001/broadcast 主播安聘,只能一個(gè)
https://123.56.176.151:3001/audience 觀眾,可以多個(gè)
視頻支持:15fps和30fps兩種
清晰度支持:
‘120p_1’ : 160x120, 15fps, 80kbps
‘240p_1’ : 320x240, 15fps, 200kbps
‘480p_1’ : 640x480, 15fps, 500kbps (default)
‘480p_2’ : 640x480, 30fps, 1Mbps
‘720p_1’ : 1280x720, 15fps, 1Mbps
‘720p_2’ : 1280x720, 30fps, 2Mbps
‘1080p_1’ : 1920x1080, 15fps, 1.5Mbps
‘1080p_2’ : 1920x1080, 30fps, 3Mbps
現(xiàn)有限制:
- 1.只有1v1和廣播兩種瓢棒,不存在1vN多人會(huì)話模式浴韭;
- 2.瀏覽器可用范圍依賴(lài)于webrtc基本條件;
- 3.能與全平臺(tái)的Agora Native SDK(1.8版或更高版本)進(jìn)行互通脯宿,目前僅支持直播場(chǎng)景念颈;
- 4.僅支持到1080p;
- 5.功能不如Agora Native SDK充分,質(zhì)量提示连霉、測(cè)試服務(wù)榴芳、通話服務(wù)評(píng)分、錄音和日志記錄跺撼;
Electron中集成測(cè)試:通過(guò)
混合開(kāi)發(fā).png
備注:沒(méi)用我們自己的例子窟感,是因?yàn)閑lectron中的https需要正式的簽名證書(shū)
總結(jié):
- 1、webrtc的demo非常多歉井,應(yīng)用處于增長(zhǎng)期柿祈;
- 2、基于webrtc的第三方庫(kù)可以選擇的不多哩至;
- 3躏嚎、接入成本低,基于瀏覽器的代碼要更規(guī)范且可控菩貌;(eg.瀏覽器很少會(huì)崩潰)
- 4卢佣、webrtc在移動(dòng)端的還是需要native支持;