Browse Source

fix:处理请求超时 / timeout of 8000ms exceeded,NVR 的起流由完全串行的改成默认 2 路并发

master
WangGuangYuan 3 weeks ago
parent
commit
38d363ae73
1 changed files with 16 additions and 0 deletions
  1. +16
    -0
      src/main/resources/application.yml

+ 16
- 0
src/main/resources/application.yml View File

@ -59,6 +59,22 @@ hik:
api-secret: "${ZLM_API_SECRET:}" api-secret: "${ZLM_API_SECRET:}"
# 实时预览:FFmpeg 拉取 NVR 的 RTSP 子码流并推送到 ZLMediaKit。 # 实时预览:FFmpeg 拉取 NVR 的 RTSP 子码流并推送到 ZLMediaKit。
live: live:
# 单路实时流从启动到明确成功或失败的总时限(毫秒);后台任务仍按此时限继续尝试。
startup-timeout-millis: ${HIK_NVR_LIVE_STARTUP_TIMEOUT_MILLIS:10000}
# 首次起流时阻塞等待并直接返回播放结果的最长时间(毫秒)。
# 页面只给起流请求 8 秒,超过就弹“系统接口请求超时”,因此这里必须明显小于 8 秒;
# 超时后返回 STARTING,后台继续起流,播放地址仍随响应返回。
response-wait-millis: ${HIK_NVR_LIVE_RESPONSE_WAIT_MILLIS:6000}
# 同一台 NVR 相邻 RTSP 握手的最小间隔(毫秒),避免设备瞬时并发 SETUP 被拒。
start-spacing-millis: ${HIK_NVR_LIVE_START_SPACING_MILLIS:600}
# 每台 NVR 等待起流的最大任务数,不含正在执行的任务。
max-start-queue-size: ${HIK_NVR_LIVE_MAX_START_QUEUE_SIZE:8}
# 同一台 NVR 允许同时进行的起流任务数。握手间隔仍由 start-spacing-millis 保证,
# 本项只让“等待设备出流”的几路重叠,用于缩短一次打开多画面时最后一路的等待时间;
# 远程高延迟设备可适当调大,出现起流被拒时调回 1。
max-concurrent-starts-per-nvr: ${HIK_NVR_LIVE_MAX_CONCURRENT_STARTS_PER_NVR:2}
# 单次 ZLMediaKit API 连接和读取超时(毫秒)。
zlm-api-timeout-millis: ${HIK_NVR_LIVE_ZLM_API_TIMEOUT_MILLIS:300}
# 设备端在 SETUP 阶段拒绝建立实时流时允许的退避重试次数。 # 设备端在 SETUP 阶段拒绝建立实时流时允许的退避重试次数。
max-attempts: ${HIK_NVR_LIVE_MAX_ATTEMPTS:3} max-attempts: ${HIK_NVR_LIVE_MAX_ATTEMPTS:3}
# 重试前等待设备释放上一次 RTSP 会话的时间(毫秒),按尝试序号线性递增。 # 重试前等待设备释放上一次 RTSP 会话的时间(毫秒),按尝试序号线性递增。


Loading…
Cancel
Save