Go环境搭建
下载网站
https://golang.google.cn/dl/
安装
tar xvf go1.16.6.linux-amd64.tar.gz -C /usr/local
配置环境变量
# GOROOT是系统上安装Go软件包的位置
export GOROOT=/usr/local/go
# GOPATH是工作目录的位置,可配置多个目录
export GOPATH=$HOME/go
# 把$PATH放到最后,可以屏蔽之前安装的版本
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
设置代理
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
Livego编译运行
# go build
# ./livego
INFO[2021-07-24T15:55:32+08:00]
_ _ ____
| | (_)_ _____ / ___| ___
| | | \ \ / / _ \ | _ / _ \
| |___| |\ V / __/ |_| | (_) |
|_____|_| \_/ \___|\____|\___/
version: master
INFO[2021-07-24T15:55:32+08:00] HLS server enable....
INFO[2021-07-24T15:55:32+08:00] RTMP Listen On :1935
INFO[2021-07-24T15:55:32+08:00] HTTP-API listen On :8090
INFO[2021-07-24T15:55:32+08:00] HLS listen On :7002
INFO[2021-07-24T15:55:32+08:00] HTTP-FLV listen On :7001
注意,如果没有设置代理,build时会出现如下错误
go: github.com/auth0/[email protected]: Get "https://proxy.golang.org/github.com/auth0/go-jwt-middleware/@v/v0.0.0-20190805220309-36081240882b.mod": dial tcp 216.58.200.241:443: i/o timeout
OBS 推流
服务器
rtmp://172.16.11.138:1935/live
串流秘钥获取
http://172.16.11.138:8090/control/get?room=test
{"status":200,"data":"L17LTlsVqMNTZyLKMIFSD2x28MlgPJ0SDZVHnHJPxMKi0tWx"}
- test 为自定义房间号名称,作用:推流生成秘钥;拉流指定房间
- L17LTlsVqMNTZyLKMIFSD2x28MlgPJ0SDZVHnHJPxMKi0tWx 即为OBS需要的串流秘钥
VLC 拉流
rtmp://172.16.11.138:1935/live/test
实时状态
http://172.16.11.138:8090/stat/livestat
返回
{
"status":200,
"data":{
"publishers":[
{
"key":"live/test",
"url":"rtmp://172.16.11.138:1935/live/test",
"stream_id":1,
"video_total_bytes":102135581,
"video_speed":2557,
"audio_total_bytes":6583545,
"audio_speed":162
}
],
"players":[
{
"key":"live/test",
"url":"rtmp://172.16.11.138:1935/live/test",
"stream_id":1,
"video_total_bytes":97924416,
"video_speed":2502,
"audio_total_bytes":6253830,
"audio_speed":161
}
]
}
}