So far, the only direct and indirect dependency of lal is naza(A basic Go utility library) which is also written by myself. This leads to less dependency or version manager issues.
Using
Running lalserver:
$./bin/lalserver -c ./conf/lalserver.conf.json
Using whatever clients you are familiar with to interact with lalserver.
For instance, publish rtmp stream to lalserver via ffmpeg:
$ffmpeg -re -i demo.flv -c:a copy -c:v copy -f flv rtmp://127.0.0.1:1935/live/test110
Play multi protocol stream from lalserver via ffplay:
$ffplay rtmp://127.0.0.1/live/test110 $ffplay http://127.0.0.1:8080/live/test110.flv $ffplay http://127.0.0.1:8081/hls/test110/playlist.m3u8 $ffplay http://127.0.0.1:8081/hls/test110/record.m3u8 $ffplay http://127.0.0.1:8082/live/test110.ts
More than a server, act as package and client
Besides a live stream broadcast server which named lalserver precisely, project lal even provides many other applications, e.g. push/pull/remux stream clients, bench tools, examples. Each subdirectory under the ./app/demo directory represents a tiny demo.
Our goals are not only a production server but also a simple package with a well-defined, user-facing API, so that users can build their own applications on it.
LAL stands for Live And Live if you may wonder.
Contact
Bugs, questions, suggestions, anything related or not, feel free to contact me with lal github issues.
License
MIT, see License.
本文来自:51CTO博客
感谢作者:mob604756fb8908
查看原文:LAL-开源Go语言音视频流媒体服务器
相关阅读 >>
更多相关阅读请进入《Go》频道 >>
Go语言101
一个与时俱进的Go编程知识库。