linux-ubuntu-obs推流到bilibili及虎牙直播测试
摘要:由于《嵌入式操作系統》網絡授課的需要,參考CSDN多篇帖子,在筆記本Thinkpad Win7上,搭建了Linux ubuntu 16.04 + OBS 的推流程序,之后,向幾大主流直播平臺進行推流測試,測試成功了“虎牙”和bilibili兩個可用的平開,并開展授課直播。
一.安裝ubuntu預熱階段
太久時間沒有接觸Linux,還停留在本科階段學習Redhat 9及fedora版本的時代(暴露年齡了)。現在,Thinkpad筆記本8G內存獨立NVS4200顯卡,安裝了win7作為日常辦公機器,ままです。
1.版本方案選擇,版本ubuntu教學要求,方案三個:
A直接u盤或者光盤啟動安裝在硬盤上;
B虛擬機安裝VMware,再在windows上安裝linux;
C采用wubi.exe,將linux作為一個大“軟件”,安裝在windows上。
考慮到A容易弄亂電腦硬盤的分區表,造成資料丟失;B的VM軟件商業化收費,需要再尋找新的替代軟件;C恰好不弄亂分區表,同時都是免費,而且好卸載。三害相權取其軽い,所以C. (注,經DeanLuo提示,如果使用win10電腦的話,方案C對應的就是在win10下安裝ubuntu的子系統)
2.ubuntu初期版本,由于最初先下載wubi.exe是綁定的13.10,那么就開始實驗,(并不實際推薦采取這個版本,有經驗者,請忽略本段跳往3) 下載了:ubuntu-13.10-desktop-amd64.iso,安裝的時候,按照提示,把wubi.exe及對應的iso文件放在同一個文件夾,然后,雙擊進行打開,即可開始安裝,需要注意的是:記得設定第一個管理員賬戶密碼,建議設定ubuntu系統英文顯示,以及安裝位置不要放在C盤,最好放在其他盤的根目錄下,避免中文目錄名子,例如E:/. 大約一個小時不到就安裝好了,然后開始熟悉,從sudo命令開始看,然后如何第一次建立root超級管理員的密碼。這一初期版本的問題是,ubuntu官方已經放棄此版本的更新維護,相關的軟件倉庫無法工作,需要手動切換到軟件倉庫地址,即編輯/etc/apt/sources.list文件,對應的位置修改成 …… http://old-releases.ubuntu.com/ubuntu ……還有注意ubuntu的版本英文單詞代號的修改。后續安裝OBS推流軟件,很可能因為ubuntu版本太低無法成功,所以放棄ubuntu 13.10方案了。這時候,wubi.exe的優勢就體現出來了,可以登錄到win7里面,然后像卸載普通軟件一樣,卸載ubuntu.
3.下載ubuntu14.04 LTS版本
由于wubi.exe不能支持更高版本的ubuntu,導致wubi.exe項目途中放棄,所以,我們無法采用wubi.exe一步到位升級到ubuntu 16.04或者18.04版本,還好我找到了wubi.exe 安裝成功ubuntu14.04 LTS版本的例子,然后檢索到支持obs studio的最低版本ubuntu如下原文:OBS:
The Linux release is available officially for Ubuntu 14.04 and newer.
所以,我就大膽前進,下載了ubuntu14.04 LTS版本,ps,LTS表示的是“長long期terms支持support”. 官方下載地址在:
releases.ubuntu.com/14.04.6/ 默認選了64位desktop版本的系統。具體操作細節清參考https://blog.csdn.net/weixin_33852020/article/details/93241726
有提到無法進入ubuntu系統的問題,需要在啟動引導界面注意把ro修改成rw,這一點我沒有遇到。另,win10系統下,是否也有類似問題,請自學。
4.從ubuntu14.04版本自動升級到ubuntu16.04版本。
由于14.04版本獲得ubuntu官方支持的有效期是2014-2019年,剛剛好失去支持,所以帶著好奇心,讓我想起《好奇害死貓》電影。開始啟動升級,升往下一個16.04LTS版本。保險起見,我選擇依靠系統自己通過軟件倉庫升級,網絡下載耗時30分鐘,但是升級安裝耗時大約一個通宵,幾乎是下載了新的iso,再升級,比重新安裝還復雜。大致過程請參考,如下帖子https://blog.csdn.net/chszs/article/details/51236572?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
雖然時間消耗有點常,基本上還算順利,中間會詢問是否更新軟件倉庫的源的地址到新的版本,請記得選yes. 然后,重啟多次,最后,早晨起來發現黑屏了。這里不用害怕,是桌面系統啟動失敗,需要重新設定一下,參考這個:https://bbs.csdn.net/topics/391941922
(這里不涉及到顯卡驅動問題,筆記本使用的是系統自帶的顯卡兼容驅動)解決好了以后,我們就開始ubuntu16.04的歷程了。
5.ubuntu16.04版本準備工作
主要包括刪除多余內核,解放boot區域的空間,這個是從網上帖子上看到的,僅保留了linux-image-4.4.0-31-generic內核。升級以后的apt-get update 與upgrade。。。至此,一個用于嵌入式操作系統教學的linux操作系統就準備完成。當然,*如果是win10系統,則可以考慮一步到位安裝ubuntu16.04 LTS子系統。*具體請參考:https://blog.csdn.net/nasonyehfm/article/details/95464474
二. OBS studio 安裝
1.參考網址:https://obsproject.com/download
2.檢查openGL版本,OpenGL 3.2 or later is required .如果是ubuntu14.04版本,可能沒有,則需要安裝一個叫做“”Mesa“”的一個軟件包。
3.FFmpeg,可以apt-get方式安裝進來,如果檢查沒有,則可能需要添加還有PPA字樣的軟件倉庫的源。參考https://blog.csdn.net/lh2016rocky/article/details/75331614
4.最后支持apt-get install obs-studio命令直接安裝OBS studio
5.照方抓藥比較順利,啟動以后,第一步建議設定OBS的操作界面為中文,第二步可以自動檢測可以設定的最大流推參數。
三.推流推往誰?
1.抖音,網絡資料表明抖音支持第三方OBS推流的游戲直播,需要進入到直播房間再獲取推流地址及串碼,可是,我下載了最新的手機端10.0版本,顯示創建游戲用的房間失敗,也有其他網友遇到了同樣的問題。不知道是不是帳號認證的權限不夠,因此,無法得到推流的地址及串流碼,失敗;
2.快手/應該也是AcFun的老板,沒有在網絡上找到成功的案例,并且官方無發布支持第三方obs,放棄;
3.陌陌,這個號稱納斯達克的企業,我服了它了:(1)首先陌陌在開源OBS studio的基礎框架下,自己研發了一款僅支持windows的momo_live軟件,額外加入了定制插件,并實現obs直播功能。思維方式上還是做自我掌握,平臺整體獨立的考量。(2)實驗效果,體驗不如原版的好,因為在窗口前后重疊的情況下,直播內容會互相干擾,也可能是我沒找到設置的秘訣。(3)推流地址和串碼(簡稱“”木牛流馬“”),在Linux下直接使用直播房間提供的木牛流馬,obs上觀察顯示推流成功,但遠程直播畫面和聲音出不來。如果是用windows的momo_live.,則相同的木牛流馬可以推流成功并直播顯示,于是我殺了一個回馬槍,再去windows的momo_live里面檢查木牛流馬,大吃一驚,居然變換了木牛流馬。再進一步,我把變更以后的木牛流馬手動保存下來,重啟linux再obs推往新的木牛流馬,居然成功了,可是好景不長,只能堅持十幾秒,屢試都爽。這說明每次momo服務器會對直播的服務器進行變更,猜測是做云端服務器的負載平衡。至此,陌陌平臺上的實驗不算成功。
4.YY直播,直播室給出的推流地址始終是127.0.0.1地址下的一個端口。然后把這個127開頭的內容粘貼進入windows平臺的定制obs即可實現直播。問題是,這個127.0.0.1并無法提取到遠端服務器的地址,是不是有辦法通過報文分析捕獲到,還有待進一步實驗。
5.虎牙,不知道YY和虎牙有何種親戚關系,在app直播助手上給出的推流地址居然是192.168.0.1開頭的一串。后續參考網絡資料,得知需要登錄官網的播主直播間,網頁版才能找到真正的遠程推流地址,串流碼不填,linux平臺下實驗,一次成功。動態彈幕上,還沒有解決linux下的虎牙彈幕助手,因此在試課直播的時候,需要打開手機的虎牙客戶端,查看同學們發送的彈幕信息。
6.斗魚,還沒來得及實驗,網絡資料表明獲取主播資格有些困難,需要吃太多小魚?
7.探探/遇見,太側重交友,沒有直播按鈕。
8.bilibili.比較容易打開,本站參考攻略給我提供了很多幫助,經過多次實驗終于成功。主要參考了:https://blog.csdn.net/qq_26819733/article/details/80410182
9.第三方測評網站根據彈幕和發送禮物的數據,給出的單日各直播平臺的點擊量/交互/資金收入排名,預計真實數據應該還會更高。一個平臺單日實現1000萬元以上的禮物發送,非常驚嘆~
10.辦公自動化系統,例如zoom,阿里dingding,騰訊會議及華為link,均未暫未測試,僅僅從linux上直播看,本文測試成功了bilibili和虎牙。
四.其他相關的補充
1.obs無法捕獲終端窗口的顯示問題。請用舊版本的XTERM代替;
2.ubuntu下無法播放音樂視頻,可以apt-get通用解碼庫解決。
3.安裝畫圖板sudo apt-get install kolourpaint4
4.網絡瀏覽器,火狐,可自動添加flashplayer,播放網頁內容。
5.無法使用weixin及qq,但大學MOOC及相關平臺資源可以網頁訪問到,直播時候直接打開,相當于用娛樂平臺(虎牙/bilibili )為教學平臺做壓力分流了。
6.彈幕助手問題,bilibili直播的時候,可直接下載 https://www.danmaku.live 有linux版本可用.目前版本的obs studio 暫時無法加入“瀏覽器插件”browser source,因此無法實現彈幕的交互顯示,但可以支持聽眾彈幕的obs窗口外顯示。
7.更新Nvidia顯卡驅動失敗又退回。第二次好奇害死貓,真的差點直播不了了。在系統軟件中心ubuntu software center,搜索nvidia,然后升級了驅動及對應的X服務器設置,結果,再打開obs直播的時候,就不能讀取xwindows窗口內容了,例如攝像頭/窗口桌面等顯示均出錯,但全屏直播沒問題。而且在開機進入系統的時候還會報tpm啟動錯誤及CPU溫度過高這樣的問題。有搜索了一晚上,仍然不得解決,最后只好手動卸載兩個nvidia的驅動,并settting里面降級回來,如下圖部分:
這里猜測的是,窗口x.server部分被應用程序調用的時候出問題了。降級回通用的驅動以后,又正常恢復了,包括啟動系統時候也不報tpm及cpu溫度錯誤了。由此側面證實,nvidia升級驅動的同時,還很可能更新了系統的底層內容。檢查系統內核,發現除原有的4.4.0-31以外,還多了幾個:
小結,不要輕易升級顯卡驅動,更不要輕易升級內核。
結論:實測Linux下OBS設置視頻推流1000kbps,幀率25,畫面大小640*360,本地顯示本機CPU占用率10%左右,丟包率顯示1%以下,遠程直播效果上看:虎牙最流暢,其次是bilibili,再次是momo_live(win7下面).
嵌入式操作系統~試課
(更新完成20200302)
總結
以上是生活随笔為你收集整理的linux-ubuntu-obs推流到bilibili及虎牙直播测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常用排序讲解
- 下一篇: Tyvj 1176 火焰巨魔的惆怅