终端录像上传和下载
通过 GT-Streaming,企业应用可 查询终端上的远程录像,请求终端 上传到服务端,再 下载 已上传文件。流程与远程回放共用终端存储资源,但主要目的是将录像文件保存到本地磁盘再在需要的时候回放,而非远程实时播放。
适用场景
- 事故取证:将终端 SD 卡/硬盘中的录像拉取到平台
- 离线分析:上传完成后批量下载或转存
- 与远程回放的区别:远程回放是流式播放;上传是完整的文件传输
参与的系统/模块
| 系统/模块 | 作用 |
|---|---|
| 企业应用 | 发起查询、上传、下载 |
| GT-Streaming | 下发 9205/9206 等指令,接收文件,提供下载 URL |
| 终端网关 + MQ | 转发指令与状态(term-cmd、cmd-state-chg、av-upload) |
| 终端 | 响应查询,按指令上传文件到媒体服务 |
基本流程
1. (可选)订阅 av_upload 状态通知
2. GET /strm/stored → 查询终端远程录像列表
3. POST /strm/stored/upload → 请求终端上传选定文件
4. 等待上传完成 → 通知或 GET /strm/store/upload 轮询
5. 使用返回的 fileUrl → HTTP 下载文件
详细步骤
(可选) 通过 WebSocket 订阅
/user/{token}/queue/av_upload接收上传状态变更调用
GET /strm/stored按终端、时间范围查询录像文件列表用户选择文件后,调用
POST /strm/stored/upload请求上传- v4 必填
fileSz:取查询结果中对应文件的fileSz,见 迁移到 v4.0
- v4 必填
通过 av_upload 通知 或
GET /strm/store/upload确认状态为已完成使用通知或查询结果中的 fileUrl 下载文件
上传过程中可调用 POST /strm/stored/upload/ctrl 暂停、恢复或取消上传。
与远程回放的关系
| 操作 | 接口方向 | 结果 |
|---|---|---|
| 远程回放 | POST /strm/replay/open | 流式播放终端录像 |
| 录像上传 | POST /strm/stored/upload | 文件保存到服务端 |
可先 查询 同一资源列表,再决定回放或上传。
查询服务端已上传文件
上传到服务端后,可通过 GET /strm/store/upload 或演示站 远程回放 · 服务端 标签查询,见 monitor-tools · 服务端录像查询。
MQ 通知(可选)
媒体服务在上传状态变化时向 av-upload 队列发布消息,企业后端可订阅处理,无需轮询。见 上传远程录像状态变更。
常见问题
| 现象 | 处理 |
|---|---|
| 上传失败 / 参数错误 | v4 检查 fileSz 是否传入 |
| 长时间 uploading | 查终端网络、文件大小;可暂停/取消后重试 |
| 查不到服务端文件 | 确认上传已完成,查询时间范围覆盖上传时段 |
| 终端无录像 | 确认终端存储策略与查询时间、通道 |
更多见 常见问题与排错。
体验与参考
- 演示站 远程回放 — 终端/服务端查询与上传
- 流程清单 编程基本流程 · 录像上传