You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
WangGuangYuan
e8eed160dd
fix(ivs): 修复实时预览拉流代理泄漏导致的视频黑屏
问题:
- 每次点击摄像头都生成随机 streamId 并调用 ZLM addStreamProxy,
拉流代理在无人观看后也不会回收;
- 长时间使用后 ZLM 累积大量 0 观众代理(现场最多 201 路),
占满 NVR 并发连接,新建流拉不到数据;
- /api/v1/stream/stop 为空实现,停止播放时不会释放拉流;
- 表现为预置位配置中点开设备树后视频黑屏,WebRTC 信令等待 15s 超时。
改动:
- streamId 改为按摄像头确定性生成(htjc_ + cameraCode),
同一摄像头复用同一路拉流代理,避免重复拉流;
- 建立代理前先用 getProxyInfo 判断,已存在则复用;
- 实现 stop:delStreamProxy 删除代理后再 close_streams(force=1)
关闭媒体源,兼容 ZLM auto_close=0 的场景;
- 增加 Redis 观看者计数,最后一个观看者退出时才真正关流;
- 新增空闲流兜底回收:清理 htjc_ 前缀、无观众且空闲超过 120s 的代理,
在取流时异步触发并做 30s 节流;
- 补充 ZLM API 常量及代理 key(vhost/app/stream)构造。
|
3 weeks ago |
| .. |
|
java/com/inspect/patrol
|
fix(ivs): 修复实时预览拉流代理泄漏导致的视频黑屏
|
3 weeks ago |
|
resources/mapper/patrol
|
金华站预置点位绑定,删除逻辑修改统一
|
1 year ago |