
中文文档
LAL - это трансляционный сервер Audio/Video Live, написанный в Go. Это похоже на nginx-rtmp-module , но проще в использовании и с большим количеством функций, например, RTMP, RTSP (RTP/RTCP), HLS, HTTP [S]/WebSocket [S] -flv/TS, GB28181, H264/H265/AAC/G711/OPUS, RELAY, CLARCE, HO264/H265/g711/opus, relly, hopectp, jostp, hopertp, jost, H265/aac/g711, opus, rellay, clast API/NOTIFY/WEBUI, Кэш Республиканской партии.
Есть 3 способа установки LAL:
Сначала убедитесь, что версия GO> = 1.18
Для пользователя Linux/MacOS:
$git clone https://github.com/q191201771/lal.git
$cd lal
$make build Тогда все двоичные файлы попадают в каталог ./bin/ . Вот и все.
Для опытного суслика (и пользователя Windows) единственное, что вы должны беспокоиться, это то, что the main function находится в каталоге ./app/lalserver . Итак, вы также можете:
$git clone https://github.com/q191201771/lal.git
$cd lal/app/lalserver
$go buildИли используя все идентификаторы, которые вы хотели бы.
До сих пор единственная прямая и косвенная зависимость LAL - это Наза (базовая библиотека утилит GO), которая также написана мне. Это приводит к меньшей зависимости или проблемам менеджера версий.
Предварительные двоичные файлы для Linux, MacOS (Darwin), Windows доступны на странице Lal GitHub Relesesses. Естественно, использование последнего бинарного выпуска является рекомендуемым способом. Формат именования - lal_<version>_<platform>.zip , например, lal_v0.20.0_linux.zip
LAL также может быть построен из источника, где бы ни работал инструмент компилятора GO, например, для других архитектур, включая 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.
Например, опубликовать RTMP -поток в Lalserver через FFMPEG:
$ffmpeg -re -i demo.flv -c:a copy -c:v copy -f flv rtmp://127.0.0.1:1935/live/test110Воспроизвести много протокола от Lalserver через FFPlay:
$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 даже предоставляет много других приложений, например, клиентов Push/Pull/Remux, инструменты для скамей, примеры. Каждый подкаталог в рамках каталога ./app/demo представляет собой крошечную демонстрацию.
Наши цели-это не только производственный сервер, но и простой пакет с четко определенным API, ориентированным на пользователя, так что пользователи могут создавать свои собственные приложения.
LAL выступает за Live And Live если вы можете задаться вопросом.
Ошибки, вопросы, предложения, все, что связано или нет, не стесняйтесь обращаться ко мне с проблемами Lal Github.
MIT, см. Лицензию.
Эта записка обновлена Yoko, 202404