
中文文档
LALは、GOで書かれたオーディオ/ビデオライブストリーミングブロードキャストサーバーです。 nginx-rtmp-moduleのようなものですが、使いやすく、より多くの機能を備えています。たとえば、rtmp、rtsp(rtp/rtcp)、hls、http [s]/websocket [s] -flv/ts、gb28181、h264/h265/aac/g711/opus、relay、clust、clust、clus、clus、clus、clus、cluts、lireay、htput 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または、必要なものを使用します。
これまでのところ、LALの唯一の直接的で間接的な依存性は、自分自身によって書かれたナザ(基本的なGOユーティリティライブラリ)です。これにより、依存関係やバージョンマネージャーの問題が少なくなります。
Linux、MacOS(ダーウィン)、Windowsの事前に構築されたバイナリは、Lal Githubリリースページで利用できます。当然、最新リリースバイナリを使用することが推奨される方法です。ネーミング形式はlal_<version>_<platform>.zip 、例えばlal_v0.20.0_linux.zipです
LALは、Goコンパイラツールチェーンが実行できる場所をどこでもソースから構築することもできます。たとえば、ARM32やコミュニティによってテストされたMipsleなどの他のアーキテクチャなどです。
Option 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ランニングラルセルヴァー:
$./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/test110FFPlayを介して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.tslalserverを正確に指定したライブストリームブロードキャストサーバーに加えて、 project lal 、プッシュ/プル/レムックスストリームクライアント、ベンチツールなど、他の多くのアプリケーションを提供します。 ./app/demoディレクトリの下の各サブディレクトリは、小さなデモを表します。
私たちの目標は、生産サーバーだけでなく、明確に定義されたユーザー向けのAPIを備えたシンプルなパッケージでもあるため、ユーザーは独自のアプリケーションを構築できます。
LAL 、あなたが疑問に思うかもしれないならLive And Liveの略です。
バグ、質問、提案、関連するものであろうとなかろうと、Lal Githubの問題についてはお気軽にご連絡ください。
MIT、ライセンスを参照してください。
Yoko、202404によって更新されたこのメモ