【问题标题】:Is it possible to host multiple aler9/rtsp-simple-server on the same machine是否可以在同一台机器上托管多个 aler9/rtsp-simple-server
【发布时间】:2021-06-21 15:56:05
【问题描述】:
我正在使用这个命令在我的 linux 机器上启动一个服务器:
docker run -d --rm -it --network=host aler9/rtsp-simple-server
这个命令连接一个rtsp流
docker run -v $(pwd):$(pwd) --network=host
linuxserver/ffmpeg:arm64v8-latest -re -stream_loop -1 -i
$(pwd)/sample.mp4 -c copy -f rtsp rtsp://localhost:8554/mystream
是否可以启动第二个 rtsp 服务器并将 rtsp 流连接到第二个服务器。
我想要做的是模拟多台摄像机,每个摄像机都有一个子流
【问题讨论】:
标签:
docker
rtsp
rtsp-client
【解决方案1】:
尝试像这样运行多个 rtsp 服务器:
docker run --rm -it -e RTSP_PROTOCOLS=tcp -p 8554:8554 -p 1935:1935 aler9/rtsp-simple-server
docker run --rm -it -e RTSP_PROTOCOLS=tcp -p 8555:8554 -p 1936:1935 aler9/rtsp-simple-server
docker run --rm -it -e RTSP_PROTOCOLS=tcp -p 8556:8554 -p 1937:1935 aler9/rtsp-simple-server
然后像这样连接:
# Connecting to first server
docker run -v $(pwd):$(pwd) --network=host linuxserver/ffmpeg:arm64v8-latest -re -stream_loop -1 -i
$(pwd)/sample.mp4 -c copy -f rtsp rtsp://localhost:8554/mystream
# Connecting to second server
docker run -v $(pwd):$(pwd) --network=host linuxserver/ffmpeg:arm64v8-latest -re -stream_loop -1 -i $(pwd)/sample.mp4 -c copy -f rtsp rtsp://localhost:8555/mystream
# Connecting to third server
docker run -v $(pwd):$(pwd) --network=host linuxserver/ffmpeg:arm64v8-latest -re -stream_loop -1 -i $(pwd)/sample.mp4 -c copy -f rtsp rtsp://localhost:8556/mystream
这个解决方案基本上使用 docker 端口映射并将每个服务器映射到不同的端口,这样它们就不会发生冲突。根据aler9/rtsp-simple-server,端口映射适用于 tcp,可能不适用于 udp。
udp 的解决方案需要更多调查。