OBS-NDI雙機(jī)直播方案分享及其他方案

? ? 怎么做能實(shí)現(xiàn)高分辨率高刷新率游戲時(shí)進(jìn)行直播?最近在思考怎么搞直播配置,設(shè)想以及實(shí)踐下來的各種單機(jī)、雙機(jī)、雙卡方案等中遇到最大的一個(gè)問題就是:游戲主機(jī)是4K160Hz高分辨高刷屏(甚至還要開HDR),為了在這個(gè)規(guī)格下玩游戲,并使用OBS進(jìn)行直播或者錄屏,我搜索相關(guān)資料,查閱網(wǎng)友分享,最后實(shí)現(xiàn)了高分辨率高刷新率游戲的同時(shí)進(jìn)行直播??紤]過的方案有:
????*. 雙機(jī)采集卡方案
????*. 單機(jī)單卡方案
? ? *. 單機(jī)雙卡方案
? ? *. 雙機(jī)NDI方案
????從成本上考慮,單機(jī)單卡最優(yōu),不需要加額外配置就可以完成。從配置上來說,也是單機(jī)單卡最為簡單。但要實(shí)現(xiàn)高質(zhì)量游戲的同時(shí)進(jìn)行直播或者錄制,還得雙機(jī)NDI,也是我最終的選擇。每種方案的特點(diǎn)請看接下來的內(nèi)容:

雙機(jī)采集卡方案(達(dá)咩)
????第一個(gè)要排除的方案就是使用采集卡。目前能買到的采集卡(不知道專業(yè)領(lǐng)域有沒有相關(guān)產(chǎn)品)最高支持4K60Hz環(huán)出,雖然使用采集卡對游戲主機(jī)的額外負(fù)載幾乎沒有,但使用采集卡方案達(dá)不到理想的游戲畫面。在主機(jī)上也有相同的問題,XSX支持4K120Hz輸出,為了直播接上采集卡后要么4K60Hz,要么降低分辨率提高刷新率。順便說一句,我在查閱資料的過程中看到有網(wǎng)友提到,XBox可以直接串流到PC上,也許可以高畫質(zhì)玩游戲的同時(shí)進(jìn)行直播。
????采集卡有兩種接法,環(huán)出(需要采集卡支持環(huán)出):原本游戲主機(jī)是:顯卡?-->?顯示器,加入采集卡:顯卡?-->?采集卡IN?--?采集卡OUT?-->?顯示器,顯卡輸出的畫面通過采集卡繞一圈再轉(zhuǎn)到顯示器,同時(shí)采集卡采集到的視頻數(shù)據(jù)通過PCI-E或者USB口傳輸?shù)戒浿啤⒅辈ブ鳈C(jī)。我看到的目前能購買到的采集卡都是HDMI接口,且最高HDMI2.0,帶寬是沒法支持4K120Hz及以上。PS5、XSX這邊都是HDMI2.1輸出,配合有相應(yīng)接口的電視機(jī)或顯示器才能實(shí)現(xiàn)高質(zhì)量的游戲畫面。也許以后會(huì)有HDMI2.1環(huán)出的采集卡產(chǎn)品,這樣玩主機(jī)的主播們就可以無損游戲并直播、錄屏。
????另一種接法就是接顯卡的另一個(gè)輸出口,在原本的:顯卡port1?-->?顯示器,增加一路輸出:顯卡port2 --> 采集卡IN,然后在游戲主機(jī)上使用復(fù)制屏幕(快捷win+p選擇),這種方式在游戲主機(jī)看來采集卡就是另一個(gè)屏幕,使用過多屏的嗶友應(yīng)該知道問題了,我的4K160Hz主顯示器會(huì)被拉低到和采集卡一個(gè)水平(看到有網(wǎng)友分享的win10以上多屏有不同分辨率的方案,沒有進(jìn)行測試)。至于使用拓展屏幕...沒有意義。
????采集卡方案不適合我,但對于畫質(zhì)要求不是那么高的主播們是可以的,但是采集卡方案還需要處理聲音(軟件處理、硬件聲卡都可以解決),游戲聲音、外部語音(YY等)、麥克風(fēng)等,感覺比較麻煩,所以我更推薦雙機(jī)OBS-NDI方案,后面會(huì)講。

單機(jī)單卡方案(不將就)
????單機(jī)單卡方案配置是最簡單的,音頻、麥克風(fēng)這些幾乎不需要考慮,也不需要添加硬件配置,不直播錄制玩游戲時(shí)是怎樣就是怎樣。缺點(diǎn)是直播需要消耗部分系統(tǒng)資源,同時(shí)游戲+直播可能會(huì)造成占用過高,進(jìn)而造成游戲卡頓甚至崩潰,影響游戲體驗(yàn)。下面介紹幾個(gè)細(xì)分場景:
????當(dāng)擁有強(qiáng)大CPU的時(shí)候,在OBS中選擇軟件編碼,編碼工作由CPU完成,顯卡只負(fù)責(zé)游戲。這種情況下只要CPU足夠強(qiáng),是不會(huì)影響到游戲體驗(yàn)的,而且據(jù)網(wǎng)友們分享,CPU編碼出來的畫質(zhì)是最好的。但我沒有嘗試,我的CPU是5800x,我估計(jì)多少會(huì)有影響,而且輸出畫質(zhì)越高、碼率越高,消耗的CPU資源就越高。
????當(dāng)使用一張近幾代的NVIDIA顯卡玩游戲的時(shí)候,在OBS中選擇硬件編碼(NVENC),編碼工作主要由顯卡完成,會(huì)大大降低CPU資源的消耗。關(guān)于NVENC,近幾代的N卡幾乎都內(nèi)置有專門負(fù)責(zé)處理視頻的編碼器(NVENC)、解碼器(NVDEC),且?guī)缀趺恳淮荚谶M(jìn)行更新,更多資料搜索NVENC關(guān)鍵字會(huì)有許多介紹。這里貼一個(gè)NVIDIA提供的編解碼器支持信息列表:https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new#Encoder 。由于我沒有近代的N卡,沒有測試,據(jù)網(wǎng)友們分享,N卡的NVENC編碼器出來的畫質(zhì)非常棒,接近軟件編碼。看NVIDIA官網(wǎng)介紹( https://www.nvidia.cn/geforce/broadcasting/ ),直播時(shí)使用專門的視頻編碼器,,能有效降低系統(tǒng)負(fù)載。

????當(dāng)使用一張AMD顯卡玩游戲的時(shí)候,在OBS中選擇硬件編碼(AMD編碼器縮寫有幾個(gè)版本),編碼工作由AMD顯卡完成,與使用NVIDIA顯卡類似,但又有不同。近幾代A卡大部分都有類似于NVENC的專用視頻處理核心,理論上和上面N卡類似,我沒有深入研究。但肯定的是,A卡編碼出來的畫質(zhì)不太好(狗頭),有網(wǎng)友也分享了提高輸出畫質(zhì)的設(shè)置(我沒有深入測試),或許能夠改善這個(gè)問題??赡苁怯捎隍?qū)動(dòng)的問題,我在使用該方案的過程中,游戲畫面明顯有卡頓,但是監(jiān)控的CPU、GPU、網(wǎng)絡(luò)負(fù)載都不高,很怪!后面有網(wǎng)友提到使用AMD自帶軟件(以前的ReLive,現(xiàn)在在控制面板就叫‘直播與錄制’),親測結(jié)果:玩游戲幾乎沒有受到影響,且直播輸出畫質(zhì)不錯(cuò)。這是之前能找到的最適合我的方案,但還有個(gè)問題:直播時(shí)無法使用即時(shí)回放錄制精彩瞬間了,而且雖然也能添加攝像頭、動(dòng)圖文字等元素到畫面中,但也就只有這些了(甚至沒法添加背景圖),功能遠(yuǎn)不如OBS,所以接下來我又將目標(biāo)轉(zhuǎn)到回OBS。
????當(dāng)CPU擁有顯示核心,且有獨(dú)立顯卡玩游戲時(shí),這種情況和雙顯卡一樣,下面介紹。

單機(jī)雙卡方案(機(jī)箱塞不下)
????雙顯卡大多數(shù)情況都是CPU自帶顯示核心,但平時(shí)都是使用獨(dú)顯玩游戲,顯示核心就閑置下來了。這種情況不需要升級配置,也不需要占用獨(dú)顯的資源,就能進(jìn)行直播,玩起游戲來幾乎不受影響。我最早用intel平臺(tái)的時(shí)候就是用的這種方案,將核顯對應(yīng)的驅(qū)動(dòng)更新好,然后在OBS中選擇對應(yīng)的編碼器,intel:硬件編碼QuickSync;amd: 硬件編碼VCE、AVC等(具體看顯示核心)。
????還有一種就是有一張獨(dú)立顯卡的同時(shí),再添加一張卡專門用于視頻編碼,編碼卡AMD、NVIDIA、Intel都可以,但推薦NVIDIA,原因見上節(jié):單機(jī)單卡方案。由于機(jī)箱大小、散熱以及供電等多種原因,使用一張單槽、無獨(dú)立供電的顯卡來編碼是最合適的。在電商逛了一圈,本來想搞一張Quadro P400,它使用的是第六代NVENC,但價(jià)格還是要幾百塊...為了未來考慮,加一張intel顯卡也可以(支持AV1編碼),但最低規(guī)格的A380能買到的全都是要獨(dú)立供電,且占雙槽位置。A310看了介紹,也是支持AV1編碼的,規(guī)格比A380低一點(diǎn),估計(jì)會(huì)有無獨(dú)立供電,單槽mini卡的形態(tài),但還沒上市。
????另外再看OBS論壇的時(shí)候,外國友人不建議雙卡方案,理由也各式各樣,但據(jù)我之前的使用經(jīng)驗(yàn)來看,核顯+游戲主卡還是沒有什么問題的。

雙機(jī)NDI方案
????該方案是我目前使用的方案,效果也很理想,達(dá)到了在4K160Hz游戲的同時(shí)進(jìn)行直播或者錄制。NDI(Network Device Interface),是NewTek公司于2015年推出的網(wǎng)絡(luò)設(shè)備接口協(xié)議,OBS-NDI插件就是基于該協(xié)議。使用OBS-NDI需要用到兩臺(tái)(也可以多臺(tái)電腦、多信號(hào)源直播),游戲主機(jī)和直播主機(jī)皆安裝OBS、OBS-NDI插件、OBS-NDI插件對應(yīng)版本的NDI運(yùn)行時(shí)基礎(chǔ)庫,安裝完成后需要重啟。簡單描述下配置及步驟:
????1、游戲主機(jī)+直播主機(jī)接入同一個(gè)局域網(wǎng),為了保證質(zhì)量只少是千兆環(huán)境(局域網(wǎng)千兆就可以,出口寬帶滿足直播上傳即可),實(shí)測1080p60Hz畫面?zhèn)鬏斝枰加?50M左右的帶寬。
????2、游戲主機(jī)運(yùn)行OBS(管理員模式運(yùn)行),設(shè)置好捕獲的游戲、文字、圖片攝像頭等(與單機(jī)直播設(shè)置相同)之后,不需要點(diǎn)擊開始直播或者開始錄制,在菜單欄中選擇 工具 --> NDI輸出設(shè)置,勾選主輸出,這時(shí)候游戲主機(jī)這端的OBS就準(zhǔn)備完成了,其他不需要設(shè)置。
????3、接下來在直播主機(jī)上運(yùn)行OBS(同樣以管理員模式運(yùn)行),在來源中添加NDI來源,并選擇游戲主機(jī)輸出的NDI來源,該來源中包含了視頻畫面、音頻,也可以單獨(dú)接受音頻。至此游戲主機(jī)的畫面及音頻就通過NDI實(shí)時(shí)傳輸?shù)街辈ブ鳈C(jī)。
????4、將接收到的游戲主機(jī)的畫面和聲音編碼推到直播平臺(tái)或者錄制保存。
????經(jīng)過我實(shí)測,游戲主機(jī)沒有受到影響,只是消耗了網(wǎng)絡(luò)帶寬,現(xiàn)在壓力來到了直播主機(jī)這邊。由于直播機(jī)沒有做其他工作,所以我選擇使用軟件編碼來處理音視頻信號(hào),成功將清晰的畫面推到了直播平臺(tái)。而且直播主機(jī)可以二次加工數(shù)據(jù),多場景切換,設(shè)想下局域網(wǎng)內(nèi)有多個(gè)主播通過NDI將畫面?zhèn)鞯骄钟蚓W(wǎng),坐在直播機(jī)面前的導(dǎo)播負(fù)責(zé)切換視角、加濾鏡、錄制回放等。當(dāng)然越多的源頭、游戲主機(jī)輸出的畫面質(zhì)量越高占用的網(wǎng)絡(luò)帶寬越大,根據(jù)實(shí)際情況更改網(wǎng)絡(luò)配置即可。
????在使用該方案的過程中也遇到一些問題,分享給大家:
????1、游戲主機(jī)端的OBS怎么設(shè)置?游戲端OBS設(shè)置主要是輸出畫面、音頻的設(shè)置,和單機(jī)直播沒有區(qū)別,同樣可以添加直播間背景圖,添加文字,播放音樂等。來源設(shè)置好之后調(diào)整輸出的畫面規(guī)格(可以直接設(shè)置為目標(biāo)的直播規(guī)格,比如我設(shè)置的1080p60Hz),如果想要錄制更高規(guī)格的視頻,需要在游戲機(jī)這端提高輸出規(guī)格。最后準(zhǔn)備好之后點(diǎn)開工具,NDI輸出設(shè)置,修改一個(gè)名稱用于標(biāo)識(shí),勾選上"主輸出",點(diǎn)擊確定就準(zhǔn)備好了,只要不關(guān)閉OBS就會(huì)實(shí)時(shí)輸出畫面和音頻。? ? ????

????2、直播端怎么設(shè)置?直播端打開OBS后增加來源選NDI來源,這個(gè)來源中就包含了游戲端輸出的視頻、音頻數(shù)據(jù),然后就按照正常的直播設(shè)置將NDI中的數(shù)據(jù)推到直播平臺(tái)。?
????3、直播端接收到的畫面與聲音不同步,聲音延遲。這個(gè)問題目前在OBS29+NDI插件4.10.0上沒有,看到有網(wǎng)友說有問題,估計(jì)是版本的問題。
????4、接收到的聲音有噪音。我一開始遇到這個(gè)問題了,后來發(fā)現(xiàn)噪聲出現(xiàn)在右聲道,有兩個(gè)辦法,將NDI源的聲道平衡拖到最左,也就是只使用左聲道,然后勾選單聲道,輸出的聲音“聽起來”就正常了,沒有噪音。還有一個(gè)從根本上解決,我搜索OBS論壇中看到外國友人也在說這個(gè)問題,并且NDI插件有一個(gè)分支修復(fù)了這個(gè)(https://obsproject.com/forum/threads/obs-ndi-plugin-static-in-audio-issue.161480/#post-597595),去下載這個(gè)DDRBoxman打包的插件安裝好就沒問題了(https://github.com/DDRBoxman/obs-ndi/releases/tag/4.10.1)? ? ????

????以上就是我關(guān)于直播方案的一些分享,各種方案的具體操作步驟如果大家感興趣的話我再詳細(xì)寫寫,歡迎大家一起討論。謝謝。