前言

image-1653629017370
为我的直播间默哀一分钟。
昨天晚上和女朋友看死亡笔记的时候被超管警告了1次然后掐了1次,我不信邪继续播,然后就被超管封了。后面查了下,b站貌似专门盯着小主播的直播间下手,大主播虽然播的也没版权,但是基本不会去干涉。气的我打算自己搭一个直播服务器。

应用选择

服务器端选择

因为用惯了obs直播,我还打算使用obs来直播串流,看了一下obs的串流格式,我这里用的是RTMP,随即在GitHub上查了下相关的直播服务器,很快就相中了livego。livego可以提供多种串流支持,其中就包括RTMP,同时它支持Docker部署,能很轻松的就部署在服务器上。

直播客户端选择

OBS真的很好用,开源,稳定,简洁。

观众客户端选择

  1. PC端:由于我计划使用RTMP串流,因此需要一款可以直接接收RTMP的软件,我选择的是PotPlayer,这是一款开源的视频播放软件,功能强大,可以外挂字幕,局域网播放,以及串流播放。
  2. 移动端:可惜PotPlayer没有移动端,因此选择了另一家开源的视频播放器——VLC这家是多平台的,Windows,Linux,Android,IOS,MacOs都有,其实PC端也可以使用它。

开始搭建

服务器信息

我使用的是腾讯云海外服务器,2H4G,峰值带宽30MB,流量2560g,系统Ubuntu。
对于串流来说这个配置高了些了,可以考虑最便宜的那个套餐。

部署livego并使用OBS调试

我使用的是docker镜像部署,好处是非常节省时间,基本就是安装完docker后一键部署。不过我的个人博客已经使用了服务器的8090端口,因此我把8100端口作为串流端口。

docker run -p 1935:1935 -p 7001:7001 -p 7002:7002 -p 8100:8090 -d gwuhaolin/livego

docker镜像运行起来后,记得在服务器防火墙处打开这几个端口,1935,7001,7002,8100。
打开后按照livego说明中的访问http://公网IP:8100/control/get?room=movie获取推流key。
打开OBS,在设置的推流中服务器填写 rtmp://公网IP:1935/live
串流秘钥填写刚刚在网页获取到的推流key。
保存后点击推流,如果右下角为绿色则表示推流成功。

获取串流视频

  1. PC端:
    PotPlayer中ctrl+U(或者右键 打开->打开链接),在文件网址处输入rtmp://公网IP:1935/live/movie,确定后,如果OBS开启了推流那么稍等一会就应该可以看到画面了。
  2. 移动端:
    首先要确保OBS已经开始推流(如果没有开启推流可能无法进入),打开VLC,更多->串流->新建串流,同样输入rtmp://公网IP:1935/live/movie后稍等片刻,即可看到画面。

参考

livego项目地址:https://github.com/gwuhaolin/livego/
livego中文说明文档:https://github.com/gwuhaolin/livego/blob/master/README_cn.md
livego搭建视频:https://www.bilibili.com/video/BV1Bb4y1f71T
PotPlayer官网:https://daumpotplayer.com
VLC官网:https://www.videolan.org
OBS官网:https://obsproject.com/

Q.E.D.


寄蜉蝣于天地,渺沧海之一粟