大家所熟知的直播平臺虎牙、鬥魚、快手、抖音、B站,直播功能看似普遍,但從零到一開發卻不簡單。直播中運用到的技術難點非常之多,音訊視訊處理/編解碼,前後處理,直播分發,即時通訊等技術,學好任何一項都需要比較高的成本,將它們融合到直播功能上更是難上加難。
由於公司新專案計劃做直播產品,開發週期比較緊。經過調研:最快搭建一個直播功能的方案就是運用第三方直播SDK,低成本、效率高、風險低。本文將整理介紹幾款主流的直播SDK,便於音視訊直播的開發者清晰快速選擇適合專案的SDK,開發者最重要的是:學會站在巨人的肩膀上程式設計,效率更高。
以下所有資訊都是從官網檔案收集人工整理彙總而成,有部分資訊不確定或未提及若存在偏差,歡迎大家隨時指正便於修改,希望能幫助到大家選擇產品和服務快速搭建線上直播間。
直播產品定義:一個通用的直播模型一般包括三個模組:主播方、伺服器端和播放端。
業務視角分類:一般分為單主播直播、多主播直播。主要區別在推流端的數量。單主播直播的特點是隻有一個推流端(主播),多個拉流端(觀眾)。多主播直播的特點是有多個主播(推流端),和多個觀眾(拉流端)。
直播根據延遲角度分類:分為CDN直播和超低延遲直播,CDN直播延遲通常延遲3s以上,超低延遲直播通常延遲小於1s。
直播所需產品 | 實時音視訊產品 | 直播分發產品 | ||
---|---|---|---|---|
產品定義 | 低至200ms的端到端平均時延,提供便捷接入、高可靠、多平臺互通的音視訊服務。可完美的支援一對多、多對多的實時音視訊通話、直播、會議等場景。 | 直播分發,按照延遲時間的長短對應有不同的產品。 由於不同場景對互動和延遲的要求不同,按照延時程度,廠商一般會提供對應的直播分發產品,這裡以ZEGO為例,分為超低延遲直播、CDN直播兩大類來說明。 |
||
直播技術 | 實時音視訊 | 旁路轉推 | 超低延遲直播 | CDN直播 |
典型場景 | 觀眾與主播之間需要頻繁音視訊互動,比如小班課,線上會議等場景。 | 觀眾之間需要強同步,主播需要即時響應觀眾的文字、彈幕或者打賞資訊,比如直播大班課,一起看電影等場景。 | 觀眾不需要與主播音訊互動,觀眾之間的直播內容同步性無強要求,比如遊戲直播,直播秀場。 | |
延時情況 | 觀眾與主播連麥的內容延遲小於 400 ms。 | 觀眾和主播之間的內容延遲範圍在 600 ms ~ 1000 ms。 | 觀眾和主播之間的內容延遲大於 3000 ms。 | |
同步性 | 觀眾之間的同步性強。 | 觀眾之間的同步性良好。 | 觀眾之間的同步性差。 | |
互動體驗 | 優。 | 良。 | 差。 | |
價格 | 較高。 | 適中。 | 較低。 |
為了便於大家更好的進行直播產品的選型,筆者將各大廠商官網的核心功能進行整理彙總,並表格形式橫向對比呈現。因各家檔案較多筆者人工查詢整理,難免有有出入歡迎大家不吝賜教指正,有出入處以各家官網檔案為準。
騰訊雲-雲直播 | 即構 -****暢直播 | 阿里雲-視訊直播 | 網宿-雲直播 | 聲網-融合CDN直播 | |
---|---|---|---|---|---|
客戶案例 | bilibili,快手、now直播、鬥魚 | 映客直播、花椒直播、咪咕直播 | 淘寶、釘釘、Lazada、阿里巴巴 | 虎牙直播、河南廣播電視臺、希沃 | bilibili、鬥魚、陌陌、花椒直播 |
產品形態 | CDN | 根據不同時延要求,分為CDN、CDN Plus、超低延遲直播 | CDN | CDN | 融合CDN,可以認為是CDN |
主要場景 | •CDN直播 | •CDN直播質量無法保證的場景 •質量優先的直播使用者 |
•CDN直播 | •CDN直播 | •單個CDN直播無法保證質量的場景 |
核心優勢 | •節點豐富 •價格較低 •可以基於CDN提供轉碼、錄製等增值服務 |
1、提供基於不同場景需求的多檔位方案 2、節點豐富,基於全球網路排程MSDN策略、流控策略等,抗弱網能力更強,保證直播流暢率和穩定性 3、有播放器的實時播放資料,雲上的排程策略更加準確 4、可以進行端上的排程策略 5、提供端上處理能力,包括3A,前處理等 6、可以基於CDN提供轉碼、錄製等增值服務 7、質量監控更加全面 |
•節點豐富 •價格較低 •可以基於CDN提供轉碼、錄製等增值服務 |
•節點豐富 •價格較低 •可以基於CDN提供轉碼、錄製等增值服務 |
•基本等同於CDN的價格 •有播放器的實時播放資料,雲上的排程策略更加準確 •可以進行端上的排程策略 •SDK端上的各種能力 •質量監控更加全面 |
支援的連麥人數 | 最多支援50人同時連麥 | 業內首創連麥技術,最多支援10000人同時連麥 | 最多支援16人直播連麥 | 支援60人同時語音、視訊連麥互動 | 最多支援128人同時互動 |
劣勢 | 受限於CDN本身的能力,在流暢率、穩定性、實時性上表現不佳 | 要做CDN、L3的目前有一些限制(播放器等),不如CDN有通用型 | 受限於CDN本身的能力,在流暢率、穩定性、實時性上表現不佳 | 受限於CDN本身的能力,在流暢率、穩定性、實時性上表現不佳 | 受限於CDN廠商本身的限制,很難進行進一步質量提升 |
推流協定支援 | •RTMP •TCP/QUIC/SRT |
•私有協定/RTMP •TCP/QUIC |
•RTMP •TCP/QUIC/SRT |
•RTMP •TCP/QUIC/SRT |
•私有協定/RTMP •TCP/QUIC/SRT |
拉流協定支援 | •RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•私有協定/RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
排程模式 | 雲上的排程策略 | •雲上排程策略 •端上的排程策略 跨CDN廠商切換 •跨IP切換 •Quic→TCP切換 •提供基於不同場景需求的多檔位方案,支援無縫切換 |
雲上的排程策略 | 雲上的排程策略 | •雲上排程策略 •端上的排程策略 •跨CDN廠商切換 •跨IP切換 •httpDNS→DNS •Quic→TCP |
騰訊、阿里的視訊直播 是最常見的CDN直播,基於 RTMP等TCP協定實現,延遲一般在3-10S左右,抗弱網能力較差,卡頓率較高。
聲網的融合CDN直播融合了多家CDN,與聲網媒體服務進行了協同,針對CDN的卡頓率問題進行了優化,但仍受限於CDN本身的能力。
即構的暢直播提供了多種直播檔位,其中的超低延遲直播基於即構自研UDP傳輸協定實現,使用了海量資料分發網路(MSDN 網路),可以認為複用了RTC的部分優勢,因此延遲低至600ms、弱網抗性超強、卡頓率極低。
除直播的核心推拉流功能之外,直播產品快速迭代了許多功能滿足多場景需求,基本廠商們都支援,詳見以下表格。
產品功能 | 騰訊雲 | 阿里雲 | 即構 | 網易雲信 | 聲網 | 七牛雲 | 金山雲 |
---|---|---|---|---|---|---|---|
推流地址自定義 | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
視訊軟編碼 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
視訊寫死 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
美顏 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
第三方美顏介面 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
水印 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
截圖 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
多視訊解析度支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
橫豎屏推流 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
動態橫豎屏切換 | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
連麥 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
畫中畫 | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
對焦/變焦 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
映象 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
閃光燈 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
耳返 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
藍芽耳機 | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
混音 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
混響 | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
純音訊推流 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
後臺音訊推流 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
錄屏 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
短視訊錄製 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
動態影格率 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
變聲 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
升降調 | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
立體聲推流 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
懸浮窗 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
降噪 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
手機攝像頭/麥克風採集 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
手機螢幕採集 | 支援 | 支援 | 支援 | 支援 | N/A | 支援 | 支援 |
自定義採集(外部採集) | 支援 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 |
推流位元速率自適應 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | N/A |
填充/旋轉模式 | 支援 | N/A | 支援 | 支援 | N/A | 支援 | 支援 |
SEI訊息接收 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | N/A |
推流錄製 | 支援 | 支援 | 支援 | N/A | 支援 | 支援 | 支援 |
背景音樂播放 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 |
音樂與人聲混音 | 支援 | 支援 | 支援 | N/A | N/A | N/A | N/A |
H.265硬解 | 支援 | 支援 | 支援 | N/A | N/A | 支援 | 支援 |
超分 | N/A | N/A | 支援 | N/A | 支援 | N/A | 支援 |
音量均衡 | N/A | 支援 | 支援 | N/A | N/A | 支援 | 支援 |
秒開優化 | 支援 | 支援 | 支援 | 支援 | 支援 | 支援 | N/A |
自動增益補充(AGC) | N/A | N/A | 支援 | N/A | 支援 | 支援 | N/A |
回聲消除(AEC) | N/A | N/A | 支援 | N/A | N/A | 支援 | N/A |
自定義視訊渲染 | N/A | 支援 | 支援 | N/A | 支援 | 支援 | 支援 |
音視訊流加密 | N/A | 支援 | 支援 | 支援 | 支援 | 支援 | N/A |
網路直播作為新興的傳播形式能量巨大,技術進步也改變了視訊直播平臺、主播和觀眾之間的互動方式。近些年,隨著網路直播的市場規模不斷增長,同時也衍生了許多新的業務場景和互動玩法,直播產品的激烈競爭倒逼廠商開啟了自研技術之路,提升直播平臺使用者體驗。筆者關注到一些新興功能,進一步提升了對直播產品形態的演進和使用者體驗,以下為相關功能的橫向對比。
產品功能 | 即構 | 聲網 | 火山引擎 |
---|---|---|---|
場景化AI降噪 | 非音樂場景:人聲保真效果較好,降噪效果較好 音樂場景:支援99%以上的音樂場景識別並應用對應的降噪策略 |
非音樂場景:降噪效果最好,但是人聲保真效果差 音樂場景:沒有 |
非音樂場景:人聲保真效果較好,降噪效果最差 音樂場景:沒有 |
萬人連麥 | 最多支援10000人同時上麥 | 最多支援128人上麥 | 最多支援1000人同時上麥 |
狀態同步 | 最多支援10000人的狀態同步; | 不支援 | 不支援 |
分割和傳輸視訊中的主體 | 將主體外的區域設定為透明,實現只傳輸主體的效果。 多人異地同臺:將身處不同城市的嘉賓渲染到同一個虛擬舞臺上,實現釋出會、企業年會、演唱會等場景的多人異地同臺 同場互動:只需一張虛擬背景圖,即可讓所有麥上使用者同處一個空間。在同一個「健身房」一起健身、在同一片「廣場」一起跳廣場舞,盡享沉浸式的趣味視訊連麥體驗 |
分割:有 傳輸:無 |
傳輸:無 |
視訊超解析度 | 最大支援540P超分至1080P | 最大支援360P超分至720P | 無 |
暗光增強 | 所有機型全覆蓋; | 部分覆蓋,存在效能問題 | 無 |
因各大廠商直播SDK計費模式較多且差異不大,價格對比環節只列舉部分廠商的報價供參考,大家可根據實際業務需求進行選擇,同時筆者也附上廠商官方地址有任何價格相關的疑問可直接諮詢官方。
官網地址:https://helpcdn.aliyun.com
1、按量後付費模式
1.1 按使用流量計費
按不同區域使用的流量階梯價格計費,當月分別超額累進(以自然月為一個累計週期,下個月自動清零重新累積)。定價受區域和頻寬階梯影響。
流量階梯(計費單位:元/GB) | 中國內地-CN | 北美-NA | 歐洲-EU | 亞太1區-AP1 | 亞太2區-AP2 | 亞太3區-AP3 | 中東非洲-MEAA | 南美-SA |
---|---|---|---|---|---|---|---|---|
0~10 TB(含) | 0.528 | 0.920 | 0.920 | 1.580 | 1.700 | 1.700 | 2.620 | 2.620 |
10 TB~50 TB(含) | 0.506 | 0.920 | 0.920 | 1.580 | 1.700 | 1.700 | 2.620 | 2.620 |
50 TB~100 TB(含) | 0.462 | 0.780 | 0.780 | 1.320 | 1.440 | 1.440 | 2.360 | 2.360 |
100 TB~1 PB(含) | 0.396 | 0.400 | 0.400 | 1.040 | 1.320 | 1.240 | 1.960 | 1.840 |
大於1 PB | 0.330 | 0.320 | 0.320 | 0.920 | 1.180 | 1.180 | 1.840 | 1.700 |
1.2 按峰值頻寬計費
以當日您直播觀看區域所在節點,直播加速服務分別產生的頻寬最高值(單位Mbps)為結算標準。定價受區域和頻寬階梯影響。
頻寬階梯(計費單位:元/Mbps/天) | 中國內地-CN | 北美-NA | 歐洲-EU | 亞太1區-AP1 | 亞太2區-AP2 | 亞太3區-AP3 | 中東非洲-MEAA | 南美-SA |
---|---|---|---|---|---|---|---|---|
0~500 Mbps(含) | 1.320 | 3.280 | 3.280 | 6.560 | 7.880 | 7.880 | 11.820 | 10.640 |
500 Mbps~5 Gbps(含) | 1.276 | 3.020 | 3.020 | 6.300 | 7.620 | 7.620 | 11.540 | 10.360 |
5 Gbps~20 Gbps(含) | 1.232 | 2.760 | 2.760 | 6.040 | 7.340 | 7.340 | 11.280 | 10.100 |
大於20Gbps | 1.188 | 2.620 | 2.620 | 5.900 | 7.220 | 7.220 | 11.160 | 9.980 |
官網網址:https://www.zego.im/
每月免費使用10000分鐘,不超過完全免費,超過部分單獨計算:
他家官網報價常規可以拿到5%-15%的優惠折扣,如果有活動趕上大促,比如今年是他們7週年,部分產品折扣力度非常大。
1.CDN直播
用量統計方式:CDN 目前預設為後付費按量計費,並提供兩種計費型別:頻寬計費和流量計費,您可根據自身業務形態,選擇適合的計費模式。
服務定價
計費檔位 | 計費型別 | 檔位說明 | 價格 |
---|---|---|---|
(0Mbps,500Mbps] | 頻寬 | 月峰值頻寬 | 26元/Mbps/月 |
(500Mbps,2Gbps] | 頻寬 | 月峰值頻寬 | 24元/Mbps/月 |
(2Gbps,∞] | 頻寬 | 月峰值頻寬 | 22元/Mbps/月 |
不區分階梯用量 | 流量 | 拉流累計 | 0.5元/GB |
2.超低延遲直播
用量統計方式:目前預設為後付費按量計費,按照使用者實際拉取音視訊流的時長來統計超低延遲直播服務的用量。
服務定價
計費檔位 | 計費型別 | 檔位說明 | 價格(元/千分鍾) |
---|---|---|---|
高音質純音訊 | 時長 | 純音訊 | 4.00 |
標清視訊(SD) | 時長 | 解析度 ≤ 360P( 480 x 360 ) | 7.00 |
高清視訊(HD) | 時長 | 360P < 解析度 ≤ 720P( 1280 × 720 ) | 14.50 |
超清視訊(HD+) | 時長 | 720P < 解析度 ≤ 1080P( 1920 × 1080 ) | 57.00 |
官網網址:
融合CDN直播
流量階梯單價:下表列出各個流量階梯下每個地區的流量單價,價格單位:元/GB。
月度總流量 (GB) | 中國內地 | 北美 | 歐洲 | 亞太 1 區 | 亞太 2 區 | 大洋洲 | 中東非洲 | 南美 |
---|---|---|---|---|---|---|---|---|
0 - 10,000 | 0.25 | 0.48 | 0.48 | 0.48 | 0.73 | 0.96 | 0.73 | 0.73 |
10,000 (含)- 50,000 | 0.23 | 0.46 | 0.46 | 0.46 | 0.69 | 0.92 | 0.69 | 0.69 |
50,000 (含)- 100,000 | 0.21 | 0.42 | 0.42 | 0.42 | 0.63 | 0.84 | 0.63 | 0.63 |
100,000 (含)- 1,000,000 | 0.19 | 0.38 | 0.38 | 0.38 | 0.57 | 0.76 | 0.57 | 0.57 |
大於 1,000,000 | 0.16 | 0.32 | 0.32 | 0.32 | 0.48 | 0.64 | 0.48 | 0.48 |
官網地址:https://netease.im
直播服務計費項由兩部分組成:日峰值頻寬費+增值服務費(可選)
1.普通直播
近幾年直播行業飛速發展,從早期的秀場直播到電商直播,以及如今火爆的互動直播。直播技術不僅對延時的要求越來越高,還加入了各類美顏特效和互動玩法,全方位提升APP的活躍留存。
同時也加速了直播技術的發展,線上直播間的搭建涉及到的技術難點非常多,直播SDK加快了直播程式開發的效率,技術成熟的直播SDK也更加穩定可靠。大家可以根據專案需求選擇合適的服務搭建直播間,也可下載演示demo具體體驗後再選擇。