最近有个需求在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