一、流程
主播通過 obs軟件通過直播 -》推流到-》直播服務器
客戶通過瀏覽器 訪問站點-》flv.js拉取直播服務器視頻流並播放
二、環境
centos7
直播服務器
https://github.com/gwuhaolin/livego
OBS
錄屏客戶端軟件
flv.js
https://github.com/Bilibili/flv.js/
播放站點
nginx站點
三、流程
3.1 centos7 安裝livego和開啟服務
安裝golang開發環境
git下載livego代碼
go build編譯成執行文件livego
運行 ./livego
[root@localhost livego]# ./livego
2020/01/28 19:53:13 main.go:118: start livego, version master
2020/01/28 19:53:13 liveconfig.go:35: starting load configure file(.livego.json)......
2020/01/28 19:53:13 liveconfig.go:42: loadconfig:
{
"server": [
{
"appname": "live",
"liveon": "on",
"hlson": "on"
}
]
}
2020/01/28 19:53:13 liveconfig.go:49: get config json data:{[{live on on []}]}
2020/01/28 19:53:13 main.go:62: hls server enable....
2020/01/28 19:53:13 main.go:70: RTMP Listen On :1935
2020/01/28 19:53:13 main.go:105: HTTP-Operation listen On :8090
2020/01/28 19:53:13 main.go:43: HLS listen On :7002
2020/01/28 19:53:13 main.go:87: HTTP-FLV listen On :7001
視頻推送地址
rtmp://192.168.199.209:1935/live
3.2 obs配置和添加視頻資源
配置

添加視頻源和推送

3.3 播放站點
flv.js編譯flv.min.js
git下載代碼庫
切換到代碼目錄
npm install # install dev-dependences
npm install -g gulp # install build tool
gulp release # packaged & minimized js will be emitted in dist folder
npm慢的解決(數據源網站太慢,可以使用淘寶提供的npm數據源)
npm install -gd express --registry=http://registry.npm.taobao.org
npm config set registry http://registry.npm.taobao.org
npm install cnpm -g
播放頁面代碼 index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>課程直播</title>
</head>
<body>
<script src="flv.min.js"></script>
<video id="videoElement"></video>
<script>
if (flvjs.isSupported()) {
var videoElement = document.getElementById('videoElement');
var flvPlayer = flvjs.createPlayer({
type: 'flv',
isLive: true,
url: 'http://192.168.199.209:7001/live/test.flv'
});
flvPlayer.attachMediaElement(videoElement);
flvPlayer.load();
flvPlayer.play();
}
</script>
</body>
</html>

待完善的問題
- google瀏覽器js報錯,flv播放
