Go live stream lib/client/server and much more.
lalserver已支持:
流连接类型 | rtmp | rtsp | hls | httpflv |
---|---|---|---|---|
pub推流 | ✔ | ✔ | - | - |
sub拉流 | ✔ | - | ✔ | ✔ |
relay push转推 | ✔ | - | - | - |
relay push转拉 | ✔ | - | - | - |
编码类型 | rtmp | rtsp | hls | httpflv |
---|---|---|---|---|
aac | ✔ | ✔ | ✔ | ✔ |
avc/h264 | ✔ | ✔ | ✔ | ✔ |
hevc/h265 | ✔ | - | - | ✔ |
方式1,从源码自行编译
# 不使用 Go module
$go get -u github.com/q191201771/lal
$cd $GOPATH/src/github.com/q191201771/lal
$./build.sh
# 使用 Go module
$export GOPROXY=https://goproxy.cn,https://goproxy.io
$git clone https://github.com/q191201771/lal.git
$cd lal
$./build.sh
方式2,直接下载编译好的二进制可执行文件
上最新发布版本页面,下载对应平台编译好的二进制可执行文件的zip压缩包。
$./bin/lalserver -c conf/lalserver.conf.json
快速体验lalserver服务器见: 常见推拉流客户端软件的使用方式
lalserver详细配置见: 配置注释文档
简单来说,源码在pkg/
,app/lalserver/
,app/demo/
三个目录下。
pkg/
:存放各package包,供本repo的程序以及其他业务方使用app/lalserver
:基于lal编写的一个通用流媒体服务器程序入口app/demo/
:存放各种基于lal/pkg
开发的小程序(小工具),一个子目录是一个程序,详情见各源码文件中头部的说明
目前唯一的第三方依赖(我自己写的Go基础库): github.com/q191201771/naza
扫码加我微信(微信号: q191201771),进行技术交流或扯淡。微信群已开放,加我好友后可拉进群。
也欢迎大家通过github issue交流,提PR贡献代码。提PR前请先阅读:yoko版本PR规范
觉得这个repo还不错,就点个star支持一下吧 :)