返回
一步步教你用flvjs和livego搭建自己的直播详细版
前端
2024-02-03 07:22:11
安装和配置
1. 安装flvjs
npm install flv.js
2. 安装livego
go install github.com/livego/livego@latest
3. 配置livego
livego的配置文件位于~/.livego/livego.toml
。打开该文件并进行如下配置:
[global]
addr = ":8080"
log_level = "debug"
[hls]
segment_duration = 2
4. 运行livego
livego -c ~/.livego/livego.toml
搭建直播系统
1. 创建流媒体服务器
package main
import (
"log"
"net/http"
"github.com/grafov/flv"
"github.com/livego/flvhttp"
)
func main() {
mux := http.NewServeMux()
mux.Handle("/live/", http.StripPrefix("/live/", flvhttp.NewHandler(flv.NewMuxer())))
log.Fatal(http.ListenAndServe(":8080", mux))
}
2. 创建直播页面
<!DOCTYPE html>
<html>
<head>
<script src="flv.js"></script>
</head>
<body>
<video id="video" controls></video>
<script>
var video = document.getElementById('video');
var flvPlayer = flvjs.createPlayer({
type: 'flv',
url: 'http://localhost:8080/live/stream'
});
flvPlayer.attachMediaElement(video);
flvPlayer.load();
flvPlayer.play();
</script>
</body>
</html>
测试直播系统
1. 推流
ffmpeg -re -i input.mp4 -vcodec libx264 -acodec aac -f flv rtmp://localhost:8080/live/stream
2. 拉流
打开直播页面,即可看到直播流。
总结
本文介绍了如何使用flvjs和livego搭建自己的直播系统。通过这两个库的结合,我们可以轻松地搭建自己的直播系统,实现音视频的实时传输。