能否在同一台主机上运行多个aler9/rtsp-simple-server实例
问题解答
完全可以启动第二台独立的RTSP服务实例,满足你模拟多摄像头、为每个仿真摄像头配置对应独立子流的需求,只需要规避默认配置下的端口冲突问题即可。
常见踩坑点
直接复用原有启动命令运行第二台实例时,会因为默认监听8554端口、且使用--network=host共享主机端口空间,出现端口占用、实例启动失败的问题。
可直接落地的操作步骤
1. 启动第二台独立RTSP实例
通过环境变量给第二台实例指定唯一的监听端口(比如和第一台的8554错开,使用8555),启动命令为:
docker run -d --rm -it --network=host -e RTSP_PORT=8555 aler9/rtsp-simple-server
两个实例配置完全隔离,不会互相干扰。后续如果需要启动更多独立仿真摄像头对应的RTSP实例,只需要依次递增端口号(8556、8557…)重复执行该命令即可。
2. 向第二台实例推送对应仿真摄像头的流
推流时把目标地址的端口替换为第二台实例的监听端口,同时指定对应摄像头的独立流名即可,示例命令为:
docker run -v $(pwd):$(pwd) --network=host linuxserver/ffmpeg:arm64v8-latest -re -stream_loop -1 -i $(pwd)/sample_cam2.mp4 -c copy -f rtsp rtsp://localhost:8555/cam2_stream
补充参考
如果后续不需要严格的实例级隔离,单台RTSP服务实例也可以通过不同的流路径(比如rtsp://localhost:8554/cam1、rtsp://localhost:8554/cam2)承载多路独立子流,同样能实现多摄像头仿真效果,资源开销更低。
内容的提问来源于stack exchange,提问作者HighonH
相关产品推荐
相关产品推荐

