
中文文檔
LAL是用GO編寫的音頻/視頻直播廣播服務器。它有點像nginx-rtmp-module ,但更易於使用,並且具有更多功能,例如RTMP,RTSP(RTP/RTCP),HLS,HTTP [s]/websocket [s] -flv/ts,GB28181,H264/h264/h264/h265/aac/aac/aac/aac/aac/aac/aac/aac/aac/g711/resay,resay,resay,cromess,crops,clustp, API/NOTIFY/WEBUI,GOP緩存。
安裝LAL有3種方法:
首先,確保GO版本> = 1.18
對於Linux/MacOS用戶:
$git clone https://github.com/q191201771/lal.git
$cd lal
$make build然後所有二進製文件都進入./bin/目錄。就是這樣。
對於經驗豐富的Gopher(和Windows用戶),您唯一要關注的是the main function在./app/lalserver目錄下。因此,您也可以:
$git clone https://github.com/q191201771/lal.git
$cd lal/app/lalserver
$go build或使用您想要的任何ID。
到目前為止,LAL的唯一直接和間接依賴性是Naza(基本的Go Utility庫),它也是我自己寫的。這導致依賴性或版本管理器問題較小。
LAL GITHUB版本頁面上可用用於Linux,MacOS(Darwin)的Linux的預構建二進製文件。自然,使用最新版本的二進製文件是推薦的方式。命名格式為lal_<version>_<platform>.zip ,例如lal_v0.20.0_linux.zip
無論GO編譯器工具鏈可以運行的地方,都可以從來源構建LAL,例如,包括由社區測試的其他架構,包括ARM32和MIPSLE。
選項1,使用Docker Hub的預製圖像,因此只需運行:
$docker run -it -p 1935:1935 -p 8080:8080 -p 4433:4433 -p 5544:5544 -p 8083:8083 -p 8084:8084 -p 30000-30100:30000-30100/udp q191201771/lal /lal/bin/lalserver -c /lal/conf/lalserver.conf.json
選項2,使用Dockerfile的本地源構建,然後運行:
$git clone https://github.com/q191201771/lal.git
$cd lal
$docker build -t lal .
$docker run -it -p 1935:1935 -p 8080:8080 -p 4433:4433 -p 5544:5544 -p 8083:8083 -p 8084:8084 -p 30000-30100:30000-30100/udp lal /lal/bin/lalserver -c /lal/conf/lalserver.conf.json
選項3,使用Docker-Compose
創建一個帶有以下內容的docker-compose.yml文件:
version : " 3.9 "
services :
lalserver :
image : q191201771/lal
container_name : lalserver
ports :
- " 1935:1935 "
- " 8080:8080 "
- " 4433:4433 "
- " 5544:5544 "
- " 8083:8083 "
- " 8084:8084 "
- " 30000-30100:30000-30100/udp "
command : /lal/bin/lalserver -c /lal/conf/lalserver.conf.json運行以下命令開始服務:
docker-compose up或在背景中運行它:
docker-compose up -d運行Lalserver:
$./bin/lalserver -c ./conf/lalserver.conf.json
使用您熟悉的任何客戶端與Lalserver互動。
例如,通過FFMPEG發布RTMP流到Lalserver:
$ffmpeg -re -i demo.flv -c:a copy -c:v copy -f flv rtmp://127.0.0.1:1935/live/test110通過ffplay播放從lalserver的多協議流:
$ffplay rtmp://127.0.0.1/live/test110
$ffplay rtsp://127.0.0.1:5544/live/test110
$ffplay http://127.0.0.1:8080/live/test110.flv
$ffplay http://127.0.0.1:8080/hls/test110/playlist.m3u8
$ffplay http://127.0.0.1:8080/hls/test110/record.m3u8
$ffplay http://127.0.0.1:8080/hls/test110.m3u8
$ffplay http://127.0.0.1:8080/live/test110.ts除了精確地命名lalserver實時廣播服務器外, project lal甚至還提供了許多其他應用程序,例如推送/拉/ramux流客戶端,基準工具,示例。 ./app/demo目錄下的每個子目錄都代表一個微小的演示。
我們的目標不僅是生產服務器,而且是一個簡單的軟件包,具有明確的,面向用戶的API,因此用戶可以在其上構建自己的應用程序。
如果您想知道, LAL代表Live And Live 。
錯誤,問題,建議,任何相關的內容,請隨時與我聯繫LAL GitHub問題。
麻省理工學院,請參閱許可證。
該註釋由Yoko更新,202404