OBS官網(wǎng)下載地址是 https://obsproject.com/zh-cn 

我們常見的直播架構(gòu)是 CDN + RTMP/HTTP-FLV + HLS,目前絕大部分直播都是應(yīng)用的這類技術(shù)。RTMP/HTTP-FLV的延遲,大至是3-10秒延遲,延遲的原因主要來自編碼延遲、網(wǎng)絡(luò)延遲、緩沖延遲等;HLS的延遲,通常會(huì)在5-15秒延遲,延遲主要自編碼延遲、網(wǎng)絡(luò)延遲、切片延遲等等。

對于不涉及直播互動(dòng)的場景,這種延遲對于觀看者來說,感知不會(huì)特別明顯;對于一些像視頻連麥、答題場景、在線課堂、帶貨直播這類高互動(dòng)性的場景,對延遲幾秒就會(huì)有明顯的感知。

那么如何通過OBS做到無延遲直播、超低延遲直播呢?現(xiàn)在可以通過保利威無延遲直播(PRTC)來實(shí)現(xiàn),基于WebRTC開發(fā)的PRTC無延遲直播,可以打通直播體驗(yàn)的「最后一公里」,將直播延遲降至1秒以內(nèi),下面來介紹一下如何操作吧。



OBS如何實(shí)現(xiàn)無延遲直播?


保利威已全線上線無延遲直播,創(chuàng)建直播間選擇無延遲模式

即可獲取到無延遲rtmp地址,填寫到OBS即可




1、下載“obs-rtc-output插件”

 

2、安裝插件

第1步:分別打開obs-studio客戶端安裝目錄和插件目錄,如下,將插件目錄下的“bin”、“obs-plugins”目錄復(fù)制到obs-studio目錄中。

tLLaN0bUowJ54GSSyPHlxg

圖2:OBS安裝目錄和插件目錄截圖

 

第2步:設(shè)置自定義服務(wù)。

方式1:

用插件包中的文件services.json替換obs的配置目錄(C:\Users\用戶名\AppData\Roaming\obs-studio \plugin_config\rtmp-services)下的services.json

方式2:

修改obs的配置目錄下的services.json文件,如下:

{“name”:”保利威無延遲”,”common”:false,”servers”:[{“name”:”全球節(jié)點(diǎn)”,”url”:”https://prtc.com/api/v1/”}],”recommended”:{“keyint”:1,”output”:”rtc_output”,

“max audio bitrate”:160,”max video bitrate”:2000,”profile”:”main”,”bframes”:0}}

rBp9S5assWF6dxf5NpyRng

圖3 :OBS配置文件services.json截圖

 

3、創(chuàng)建頻道

 

第1步:登錄保利威管理平臺(tái)(如果沒有賬號(hào),可以點(diǎn)擊此處直接注冊試用賬號(hào)https://my.polyv.net/v3/register/),選擇進(jìn)入云直播;

第2步:新建直播頻道,在“直播延遲”選項(xiàng)中選擇“無延遲”,然后點(diǎn)擊“保存并創(chuàng)建直播”;

j8qM25tPmRLwhCOJCnPLOg

圖4:保利威云直播管理平臺(tái)新建直播頻道截圖

 

第3步:創(chuàng)建后,平臺(tái)會(huì)自動(dòng)分配一個(gè)頻道號(hào)和密碼,如下標(biāo)紅處,記下這個(gè)頻道和密碼,在之后的“串流密鑰”中,需要用到。

本次創(chuàng)建的這個(gè)無延遲直播道號(hào)是2662663,密碼是123456,對應(yīng)的“串流密鑰”就是:{“channelId”:”2662663″,”password”:”123456″,”name”:”test”} 。

 

 

Xwncx8-5LvJOm3tlwbvVpg

圖5: 保利威云直播管理平臺(tái)獲取頻道號(hào)和密碼

 

4、發(fā)起直播

第1步:打開OBS客戶端,添加好場景和視頻源,點(diǎn)擊右下角的“設(shè)置”,如下圖:

GnEzNm90UdNaEzMx-74Gpg

圖6:OBS客戶端操作界面

 

第2步:在設(shè)置界面中,選擇左側(cè)“推流”,在右側(cè)“服務(wù)”項(xiàng)中選擇“保利威無延遲” ;“串流密鑰”中填入“{“channelId”:”您的頻道號(hào)碼”,”password”:”您的頻道密碼”,”name”:”名稱”}”,也就是對應(yīng)填入之前創(chuàng)建好的頻道號(hào)和頻道密碼,參考{“channelId”:”2662663″,”password”:”123456″,”name”:”test”},然后點(diǎn)擊確定。

 

 

Zd0DDvv4U0NW11YmQCBRIg

圖7:OBS客戶端推流參數(shù)設(shè)置界面

 

第3步:點(diǎn)擊右下角“開始推流”,發(fā)起正式直播。

d0JDLSqYWnJRCdfSdHljxA

圖8 :OBS客戶端界面(開始推流)

 

5、直播延遲效果

 

我們來看一下實(shí)際的測試效果,以下為拍攝的測試圖,通過OBS發(fā)起端與PC、iOS、安卓觀看端的時(shí)間差,來評(píng)估一下延遲的時(shí)間差。

image

圖9:圖中右側(cè)為OBS客戶端推流界面,左上方為PC瀏覽器觀看測試端,左下方分別為iOS、安卓觀看測試端

 

從以上的測試結(jié)果來看,PC瀏覽器本次觀看延遲大約為166ms(毫秒),iOS觀看延遲大約為133ms,安卓大約為305ms,都在1秒以內(nèi)。

 

 

 

傳統(tǒng)直播與PRTC直播對比

以下整理了一下傳統(tǒng)直播與PRTC直播的不同之處:

搜狗截圖22年01月17日1152_1

圖10:傳統(tǒng)直播與保利威PRTC直播對比

 

兼容性說明

1.Android 5.0 以上版本

2.iOS 9.0 以上版本

3.Web 端請使用桌面端 Google Chrome 最新穩(wěn)定版。

4.macOS 10.10 或以上版本

5.Windows 7 或以上版本

直播作為強(qiáng)交互、信息密度高的傳播媒介,無延遲必然是大勢所趨。對OBS無延遲直播有興趣的朋友,可以下載插件來感受一下。