最近有個需求在Unity中直播桌面,着用到了視頻流。
------------------------------
VLC自身有流服務器功能,但是非常慢非常慢,還是用VLC拉流吧,好像大家也是這么做的
------------------------------
流媒體服務器用的EasyDarwin,剛好最近出了最新版本NodeJS版本easydarwin-8.0.0-1804031316,否則配置nginx也是令人不開心。
這樣的話,安裝NodeJS,下載EasyDarwin和推流器EasyPusher,就OK了
https://github.com/EasyDarwin/EasyDarwin
https://github.com/EasyDSS/EasyPusher/releases
運行easydarwin-8.0.0-1804031315\start.bat
然后運行EasyPusher_Win_v1.3.17.0803\EasyPusher.exe,配置屏幕采集,點擊Start按鈕
沒問題的話,就算推流成功了,接下來可以用VLC來測試
到此為止流媒體服務器EasyDarwin+推流器EasyPusher+接流器VLC的全套流程展示完畢。
Unity中播放視頻流的插件我嘗試了VLC for Unity和EasyMovieTexture,其中VLC for Unity我感覺比較難用,而且只能在Canvas中播放,貌似不能在三維場景中播放;
EasyMovieTexture就比較好,是在一個Quad中播放。
EasyDarwin支持RTSP,嘗試過OBS向它推流,但是失敗了,不知哪里錯了或者OBS就不能這么做
EasyMovieTexture支持RTSP
Red5支持RTMP,需要JDK1.8以上版本支持,OBS可以向它推流
先運行red5-server\red5.bat,然后打開OBS設置向Red5推流
接下來可以在VLC中測試
rtmp://localhost/live/test