GBHub 国标视频平台

详细使用手册 v8.0  |  含深度配置与排查

访问地址:http://<服务器IP>:3002
认证方式:JWT Bearer Token
默认账号:root / admin123
文档版本:v8.0

1. 登录与认证

平台使用 JWT Bearer Token 认证,所有 API 请求均需携带 Authorization 头。默认用户名 root,密码在首次部署时由管理员设置(默认 admin123)。

💡 若忘记密码,需在服务器端通过数据库或配置文件重置。

2. 设备管理

2.1 查看设备列表

该页面展示所有已成功向平台注册的 GB/T 28181 设备。设备信息包含:

操作示例:点击“刷新设备”手动同步设备列表;使用搜索框按 ID 或名称过滤;选择“在线”/“离线”筛选状态;点击“在线”或“离线”状态标签查看该设备的历史在线/离线变化记录(按时间倒序排列,支持分页)。

2.2 添加设备(预录入)

平台支持手动预录入设备信息,设备上线后通过 SIP 注册自动填充 IP/端口。

📌 若设备已通过 SIP 注册自动接入,再次手动添加会返回“设备已存在”。手动添加但未注册的设备状态为离线,IP/端口为空。

2.3 设备状态历史 新增

点击设备列表中的“在线”或“离线”状态标签,弹出模态框显示该设备的状态变化记录。

💡 若设备从未发生变化或同步任务未执行,列表为空,总记录数为 0。

2.4 设备注册配置

平台本身不主动扫描设备,所有设备必须通过 SIP 协议主动注册。请按以下步骤在摄像头端配置:

  1. 获取平台 SIP 参数:点击右上角“平台信息”,记录:
    • SIP 服务器 ID(如 34020000002000000001
    • 域(Realm)(如 3402000000
    • SIP 监听端口(默认 UDP 6060)
    • 密码(默认 QSAe6780
  2. 进入摄像头 Web 管理:通常通过浏览器访问摄像头 IP,登录后找到“网络设置”或“高级配置”中的“SIP”或“28181”选项。
  3. 填写注册参数(参考下表):
    参数说明示例值
    SIP 服务器 IP平台服务器的 IP 地址192.168.1.100
    SIP 服务器端口平台监听端口(UDP/TCP)6060
    SIP 服务器 ID平台设备 ID34020000002000000001
    平台域3402000000
    设备 ID摄像头唯一 ID(建议按规则编制)34020000001320000001
    密码平台注册密码QSAe6780
    传输协议UDP 或 TCP(建议 UDP)UDP
  4. 保存配置,摄像头将发送 SIP REGISTER 请求。注册成功后,平台设备列表出现该设备,状态变为“在线”。
📌 若注册失败,检查防火墙是否开放 6060 端口,并查看平台日志(logs/sip.log)获取错误详情。

2.5 通道操作

点击设备行的“📂 通道”按钮,列出该设备的所有通道(如摄像头各视频流)。每个通道支持以下功能:

💡 WS‑TS 适用于大多数浏览器,WebRTC 延迟更低但需浏览器支持(Chrome/Edge 推荐)。

2.6 设备录像查询

在通道列表中点击“设备录像”,选择起始时间和结束时间,系统会向设备发送历史录像检索请求。返回结果包括:

📌 如果设备没有存储录像或查询时间范围无效,将返回空列表。

2.7 编辑设备配置

点击设备行的“✏️ 编辑”,可修改设备名称、SSRC 校验开关、传输协议和密码(密码留空则不修改)。保存后设备将重新注册生效。

3. 级联管理

3.1 上级平台配置

若本平台需级联到上级 SIP 域(例如公安视频联网平台),需添加上级平台信息:

示例:上级平台 IP 为 10.0.0.1,端口 5060,域为 3402000000,设备 ID 为 34020000002000000002,密码为 123456,协议版本选 2016,填写后点击“添加级联”,平台即向上级发起注册。

3.2 通道绑定

将国标通道(由“设备ID_通道ID”组成)或非国标流(App+Stream)映射到指定的节点,实现流的分发管理。

💡 非国标流(如拉流代理产生的 live/test)也可绑定节点,但需在“节点”下拉框手动选择目标节点。

3.3 目录管理 独立导航

管理国标级联的行政区域名称、业务分组名称、通道自定义名称和通道归属,并主动推送目录给上级平台。

🏛️ 行政区域名称

为行政区划代码(2/4/6 位)设置友好显示名称,上级平台看到的目录树更直观。

📂 业务分组/虚拟组织名称

为国标编码(215 业务分组 / 216 虚拟组织)设置自定义名称,用于构建业务目录树。

🏷️ 通道名称管理 新增

为通道设置自定义显示名称,该名称将优先显示在 Catalog 目录中(若未设置则显示通道 ID)。

💡 设置名称后,需在级联管理中点击“刷新缓存”使上级平台立即生效。

🔗 通道业务分组配置

将通道挂载到指定的虚拟组织(216)下。

📤 目录推送

主动向所有已注册的上级平台推送目录。

💡 每次修改行政或业务目录后,建议立即推送一次,使上级平台及时同步。

4. 系统管理 新增

位于右上角“平台信息”旁边,点击 “⚙️ 系统管理” 按钮进入。

📌 备份文件大小限制 100 MB,恢复操作会覆盖现有数据,请谨慎操作。
示例:点击“下载备份”保存当前配置;在另一台服务器上点击“上传恢复”,选择备份文件,勾选“清空”即可完整迁移平台配置。

5. 流管理

查看当前节点上正在发布的实时流(包括国标推流和拉流代理产生的流)。

示例:live/camera1 的 RTSP 地址为 rtsp://192.168.1.100:554/live/camera1,复制后可在 VLC 中直接播放。

6. 云端录像

查询节点录制生成的 MP4 文件。这些文件通常由拉流代理(开启录制)产生,存储在节点的 /record/ 目录下。

⚠️ 删除操作会直接从磁盘移除文件,请确认后再操作。

7. 拉流代理

拉流代理用于将外部 RTSP/RTMP/HLS 等流拉取到平台,转换为标准协议(FLV/TS/fMP4),并可选进行 MP4 录制。

7.1 添加拉流代理

点击“添加拉流代理”,弹出表单填写以下字段:

示例:拉取 RTSP 摄像头 rtsp://admin:12345@192.168.1.100/stream1,App=live,Stream=camera1,模式=常驻,节点=自动,开启录制。添加后,可通过 rtmp://服务器IP/live/camera1 播放,录像文件将出现在“云端录像”中。

7.2 参数详解

参数类型必填说明
vhoststring虚拟主机,用于多租户隔离
appstring应用名,建议字母数字
streamstring流标识,唯一性
urlstring源流地址,必须可访问
on_demandbooltrue=按需,false=常驻
节点string指定节点 ID,不填则自动轮询
rtp_typeint0-TCP, 1-UDP, 2-组播
timeout_secfloat连接超时(秒)
enable_mp4bool是否开启 MP4 录制
mp4_save_pathstring录制保存根目录(默认为节点配置)
mp4_max_secondint切片时长(秒),默认由节点决定

7.3 FFmpeg 代理 新增

通过 FFmpeg 拉流代理,支持任意协议(HTTP、RTSP、RTMP、HLS 等),并由 ZLMediaKit 的 FFmpeg 进程完成拉流和转推。

📌 该功能依赖 ZLMediaKit 的 addFFmpegSource API,确保 ZLM 配置了正确的 [ffmpeg] 段。
示例:拉取 HLS 直播源 http://live.hkstv.hk.lxdns.com/live/hks2/playlist.m3u8,目标地址 rtmp://127.0.0.1/live/hks2,开启 MP4 录制。添加后可通过 rtmp://服务器IP/live/hks2 播放。

7.4 录制配置

勾选“开启 MP4 录制”后,节点会将流以 MP4 格式切片保存。存储路径规则:/record/{app}/{stream}/{日期}/{文件名}.mp4。可通过 mp4_save_pathmp4_max_second 自定义。

📌 录制文件可通过“云端录像”模块查询,删除代理不会删除已录制的文件,需手动清理。

7.5 备份与恢复

备份功能可导出所有拉流/推流代理的配置(含录制参数),恢复时可选清空现有代理再导入,适用于迁移或灾难恢复。

8. 推流管理

推流管理可将平台内的流(如国标设备流或拉流代理流)推送到外部 RTMP/RTSP 服务器,实现直播分发或云端收录。

示例:将国标流 rtp/34020000001320000001_34020000001310000001 推送到 RTMP 服务器 rtmp://live.example.com/live/stream1,选择节点,点击添加即可。成功后可在外部播放器查看。

9. ONVIF 设备发现

通过节点扫描局域网内支持 ONVIF 协议的摄像头,快速获取 RTSP 地址并一键添加拉流代理。

💡 若搜索不到设备,请检查网络环境、防火墙,或增大超时时间。

10. 鉴权管理

为特定流(App/Stream)设置播放或推流 Token,实现访问控制。

示例:live/camera1 设置播放 Token abc123,有效期 3600 秒。播放地址变为 rtmp://server/live/camera1?token=abc123

11. 告警管理

查看设备通过 SIP 上报的告警事件(如移动侦测、视频遮挡、IO 报警等)。

12. 用户管理

管理平台普通用户的访问权限。

💡 清理通道功能会调用 POST /api/admin/users/{username}/channels/clean,仅移除无效权限,不影响有效配置。

13. 定时任务 更新

管理平台定时触发的任务,支持截图、录制、会话清理和设备状态同步。

📋 支持的任务类型

类型说明所需参数
国标设备对指定国标设备的通道进行截图或录制设备 ID、通道 ID、Cron 表达式
拉流代理对拉流代理的流进行截图或录制App、Stream、Cron 表达式
会话清理扫描 Redis 会话,关闭无人观看的转发流并删除记录仅 Cron 表达式
设备状态同步 新增定时扫描设备在线/离线状态,写入 GreptimeDB仅 Cron 表达式
清理录像 新增定时清理指定保留天数前的录像文件和数据库记录Cron 表达式、保留天数(默认7)
清理截图 新增定时清理指定保留天数前的截图文件Cron 表达式、保留天数(默认7)

⚙️ 设备状态同步说明 新增

💡 该任务产生的数据用于“设备状态历史”功能,请确保定期执行以获取完整历史记录。

📝 Cron 表达式

使用 UTC 时间。例如北京时间 (UTC+8) 凌晨 3:00 对应 UTC 前一天 19:00,应写为 0 19 * * *

14. 播放器使用

14.1 播放控制

平台播放器支持三种播放方式,可根据场景选择:

播放器界面提供暂停/恢复、音量、全屏等标准控制,并支持云台控制(仅对国标设备直播有效)。

14.2 云台控制

在播放器下方,若当前播放的是国标实时流,会出现云台控制面板:

📌 云台控制依赖设备支持,若设备不支持 PTZ,按钮将无效。

14.3 自动重试 新增

播放器支持网络中断后自动恢复播放:

💡 手动点击“停止”按钮后,播放器不会自动重试,需重新点击播放。

15. 常见问题与排查

Q1: 设备注册失败,状态离线?

Q2: 播放直播流时黑屏或卡顿?

Q3: 拉流代理添加后状态为“未运行”?

Q4: 录制开启但云端录像查不到文件?

Q5: ONVIF 搜索超时或找不到设备?

Q6: 备份/恢复代理时提示数据过大?

Q7: FFmpeg 代理添加失败?

Q8: 如何修改前端显示端口或节点地址?

Q9: 目录推送后上级平台未更新?

Q10: 设备状态历史无记录?

Q11: 通道自定义名称未显示在 Catalog 中?