首页 / 影像数据 / 车载独立监控与本地媒体架构

适用模式与原图

本页描述车载独立监控定位守护 App(V3)的隐私优先部署模式:云端只承担身份、设备归属、指令、状态、定位、告警和会话信令;实时视频优先在 App 与设备之间直连,录像文件只留在设备 microSD。它特别适用于“不让平台接收或保存视频内容”的产品承诺。

该模式与“云录像/对象存储回放”是两条明确的产品线,不能混用。现有影像数据关联模型中关于 OSS 录像索引的设计仅适用于选择云录像的产品配置;本页的本地模式不创建云端录像文件或云端缩略图。

车载独立监控定位守护 App 系统架构图 V3
图:控制面与媒体面分离。蓝色控制/业务链路使用 HTTPS、MQTT;媒体使用 WebRTC/DTLS-SRTP 直连,TURN 只作中继,不落盘。

控制面、媒体面与存储边界

平面允许流转禁止流转完成判据
控制面绑定、授权、设备状态、定位、告警、PTZ/直播控制、WebRTC Offer/Answer/ICE 信令、会话令牌视频帧、录像文件、连续缩略图、媒体缓存MQTT over TLS 仅携带控制/事件;业务库仅保留元数据和审计事实
媒体面实时视频/语音的 WebRTC + DTLS-SRTP;必要时 TURN relay经 Java/Go 业务服务转发媒体;使用 TURN 传输历史文件或日志包App 与设备之间建立加密媒体通道;会话结束后不保留服务端媒体副本
本地存储面设备 microSD 分段录像、关键时间索引、告警事件标记;App RAM 中的回放时间线/缩略图云端录像、App 磁盘缩略图缓存、含视频内容的 URL 日志录像仅可由设备本地授权接口读取;App 退出或切后台时停止直播并清理内存态
不可妥协的边界:“历史回放缩略图仅内存显示,不落盘”与“平台不接收/不保存视频流、帧或内容存储”必须通过网络抓包、服务端访问日志、对象存储清单和 App 本地文件检查共同验证,不能只看功能页面。

端、云、车载设备职责

区域职责关键约束
iOS / Android App设备列表、地图、守护、实时预览、历史回放、设备设置;维护 MQTT 客户端、WebRTC、播放/时间线控制器。回放预览与缩略图仅存 RAM;密钥进入 Keychain/Keystore;App 退出立即 stop live
云端控制与业务平台API Gateway、MQTT Broker、直播/回放会话、STUN/TURN、推送、策略、设备管理、用户与授权、告警/定位/审计。不接收媒体内容;会话服务只签发短时 Token、校验设备归属与权限,并记录元数据审计。
车载设备 RK1126A前视/车内/后视三路摄像头、GNSS、BLE、Wi-Fi、microSD;设备控制、MQTT、WebRTC、HTTPS/WSS 本地接口、录像索引。录像与关键帧留在 microSD;多码流资源管理必须限制并发高码率流,避免设备过载。

设备端媒体资源策略

  • 优先级:多路预览可走缩略/低码流;同一时刻只允许有限高码率直播。主码流可按前视 1080P 20fps、车内 720P 15fps、后视 1080P 20fps 的设备能力配置,参数必须由产品型号能力表下发。
  • 观看模式:缩略预览优先 thumb;单路查看可切 smooth / hd。切换是设备资源管理器的受控动作,需回报实际生效档位。
  • 录像:设备将录像文件、关键时间索引和告警标记写入 microSD;云端可接收“有录像/有告警”的元数据,但不接收录像内容。

实时与历史会话流程

实时直播:控制经云、媒体直连

  1. App 通过 HTTPS 创建直播会话。云端校验登录、设备归属、订阅权益、隐私授权和设备在线状态。
  2. 云端生成短时 media_session_id、会话 Token 与 STUN 配置;通过 MQTT over TLS 把控制/信令通知设备。
  3. App 与设备交换 WebRTC SDP 和 ICE Candidate,默认尝试 UDP 直连;媒体建立后使用 DTLS-SRTP,媒体字节不经过业务服务。
  4. 若直连失败,按会话优先级申请短效 TURN 凭证;TURN 只中继,不存储,且触发码率/分辨率降级。
  5. App 或设备结束会话后上报状态与质量摘要,云端撤销 Token、停止设备码流;客户端清理 RAM 中的播放器、缩略图与时间线状态。

历史回放:设备 microSD 为唯一内容源

  1. App 请求指定设备、通道和时间窗的录像目录;设备本地录像索引服务返回可用片段/关键时间标记。
  2. App 优先使用本地热点或同一 LAN 的 HTTPS/WebRTC 直连;远程访问可走受控 WebRTC/TURN,但不上传录像文件到云端。
  3. 时间线、缩略预览和缓冲片段仅保存在 App 进程内存,禁止写入相册、缓存目录或分析 SDK。
  4. 会话结束、超时、切后台或用户撤销授权后,设备停止回放流,App 释放内存,云端仅保留必要的访问审计。

接口与会话最小契约

链路协议必须携带/校验禁止内容
App ↔ 云端 APIHTTPS用户身份、设备归属、授权范围、会话/幂等 ID视频字节、长期 TURN 密钥
App / 云端 ↔ 设备控制MQTT over TLS 1.3(最低 1.2)设备主题 ACL、命令 ID、nonce/时间窗、回执状态视频帧、录像分片、明文密码
App ↔ 设备媒体WebRTC / DTLS-SRTPmedia_session_id、短时 Token、通道、码流档位、有效期可重放的长期播放 URL
设备 ↔ 本地 AppBLE、mDNS、同 LAN / Local HTTPS临时会话 Token、证书/指纹校验、物理接近或已绑定证明绕过云端授权的长期管理口令

隐私、安全与验收

  • 身份和授权:所有直播、回放、PTZ 与本地管理请求都必须校验用户、设备、角色、时间窗和会话令牌;云端不可用时本地访问也不得默认放开。
  • 设备防护:设备使用唯一身份、Secure Boot、固件签名和最小开放端口;BLE/本地 API 需要 nonce、防重放与证书/指纹校验。
  • 审计最小化:记录访问人(内部 ID)、设备、用途、时间、IP 粗粒度/区域、会话结果与时长;日志中不记录视频 URL、SDP 全文、Token、车牌和 VIN。
  • 数据主体权利:撤销共享、解绑、删除账户后拒绝新会话,并在限定时间内终止既有会话;录像留在用户控制的设备介质时,也需明确格式化/转移/回收责任。

端到端验收清单

  • MQTT 报文、云端 API 日志、消息队列和数据库中均不存在视频帧、录像分片或缩略图二进制。
  • 抓包证明实时媒体仅走 App↔设备 WebRTC(或 App↔TURN↔设备);业务服务无媒体转发带宽。
  • 对象存储、CDN 与云端磁盘中没有本模式产生的视频文件;microSD 拔出/格式化后的可见行为符合产品说明。
  • App 退出、后台、弱网、权限撤销和设备离线时,直播/回放均在规定时间内停止;客户端文件系统没有缩略图或视频缓存。
  • 本地热点、同 LAN、蜂窝远程三种路径均经过授权验证,详见设备本地热点配网与双网并行