应用指南概览
本文是 GT-Streaming 应用指南 的入口,帮助你在较短时间内建立对媒体服务的整体认识,并选择正确的阅读与集成路径。
若尚未了解产品定位,可先阅读 简介。
30 秒理解
GT-Streaming 是企业应用与 JT/T 1076 车载视频终端 之间的媒体中间件。企业应用通过 HTTP 或 WebSocket 接口发起播放、回放、对讲等请求;媒体服务负责与终端网关协作、接收终端码流、完成转码与协议转换,并以 FLV、HLS、RTSP 等格式向客户端输出。
你不需要 自行处理 JT/T 1078 终端协议、RTP 封装、各厂商差异等底层细节。
各系统/模块
一次典型的实时播放涉及以下系统/模块:
| 系统/模块 | 职责 |
|---|---|
| 企业应用 / 客户端 | 调用媒体服务 API,创建播放器,展示音视频 |
| GT-Streaming 媒体服务 | 鉴权、会话管理、下发媒体指令、接收码流、转码、对外推流 |
| 消息队列(RabbitMQ) | 媒体服务与终端网关之间的指令与状态通知通道 |
| 企业终端网关 | 维持终端在线,转发媒体相关指令(9101、9201 等)及终端应答 |
| 车载视频终端 | 按指令向媒体服务推送实时或历史音视频码流 |
各系统/模块的职责边界与协作关系,详见 集成架构与系统/模块职责。

5 分钟体验
在写代码之前,建议先用在线演示建立直观感受:
- 打开 在线演示站点
- 在「在线终端」区域搜索模拟终端
8888000001 - 点击通道 1 的实时播放按钮,观察视频画面
演示站点使用模拟终端,无需自备硬件即可体验实时播放、远程回放、对讲等功能。更多说明见 在线监测工具程序。
第一次集成(推荐路径)
目标:在浏览器中看到一路来自终端的实时视频。
| 步骤 | 做什么 | 阅读 |
|---|---|---|
| 1 | 理解整体架构与各系统/模块分工 | 集成架构与系统/模块职责 |
| 2 | 了解登录与 token 管理 | 会话与 token |
| 3 | 跑通同步 HTTP 最小示例 | 实时播放示例 (同步 HTTP API) |
| 4 | 理解 reqId、保活、关闭 | 音视频请求的生命周期 |
| 5 | 按需选择协议与 API 类型 | 客户端播放协议的选择、HTTP 与 WebSocket API 选型 |
典型接入流程 (Happy Path)
终端经网关上线
→ 应用调用 POST /login 获取 token
→ 调用 POST /strm/live/open 打开实时音视频
→ 用返回的 playUrl 创建播放器并开始播放
→ 每 15 秒调用 POST /strm/keep_alive 保活
→ 停止时关闭播放器并关闭媒体请求
同步模式下,打开接口返回时媒体通常已可用,逻辑最简单,适合首次集成。异步模式与 WebSocket API 的说明见 音视频请求的生命周期 与 WebSocket API 概述。
按角色阅读
| 角色 | 推荐阅读 |
|---|---|
| 前端 / 应用开发者 | 本文 → 客户端编程基本流程 → 集成示例 |
| API 集成 | HTTP 与 WebSocket API 选型 → WebSocket API 概述 |
| 网关 / 后端集成 | 集成架构与系统/模块职责 → 消息队列集成接口概览 |
| 运维部署 | 部署概要 |
从 v3 升级请参阅 迁移到 v4.0。
按功能阅读
| 功能 | 流程说明 | 示例 | API |
|---|---|---|---|
| 实时音视频 / 监听 | 编程基本流程 · 实时播放 | example-1、example-2、ws-example-1 | 打开实时音视频 |
| 远程回放 | 编程基本流程 · 远程回放 | example-4 | 打开远程录像回放 |
| 对讲 | 对讲集成指南 | 演示站 对讲面板 | 打开实时音视频(dataType=2) |
| 终端录像上传 | 终端录像上传和下载 | 演示站 远程回放 | 查询远程录像 |
| 主动安全附件 | 主动安全附件集成指南 | 演示站 主动安全证据 | 查询报警附件 |
| RTSP 网络摄像头 | — | example-5 | 打开实时音视频 |
| 视频终端巡检 | — | — | 视频巡检概述 |
关键决策速查
| 问题 | 建议 | 详见 |
|---|---|---|
| 浏览器用哪种播放协议? | 优先 FLV,不支持时用 HLS | 客户端播放协议的选择 |
| 新应用用哪种 API? | 优先 WebSocket API + strm-js | HTTP 与 WebSocket API 选型 |
| 打开实时/回放用同步还是异步? | 首次集成用同步;多路并发用异步 | 异步与同步模式 |
| 网关侧如何对接? | 通过 RabbitMQ 订阅指令、上报状态 | 消息队列集成 |
| 术语不理解? | 查概念表 | 概念与术语 |
| 集成遇到错误? | FAQ + 错误码 | 常见问题与排错 |
集成示例索引
| 示例 | API | 打开模式 | 播放协议 | 适用场景 |
|---|---|---|---|---|
| example-1-live | HTTP | 同步 | FLV | 首次集成,最简单 |
| example-2-live | HTTP | 异步 | FLV | 多路播放、需 STOMP 通知 |
| example-3-live-hls | HTTP | 同步 | HLS | 需兼容 iPhone Safari |
| example-4-replay | HTTP | 异步 | FLV / HLS | 远程录像回放 |
| example-5-rtsp-src | HTTP | 异步 | FLV / HLS | RTSP 网络摄像头 |
| ws-example-1-live | WebSocket | 异步 | FLV | v4 新应用推荐 |
本指南其它章节
- 集成架构与系统/模块职责 — 各系统/模块分工、MQ 何时必需
- 概念与术语 — reqId、token、dataType 等
- HTTP 与 WebSocket API 选型 — 新应用如何选 API
- 客户端编程基本流程 — 各业务场景的步骤清单
- 音视频请求的生命周期 — 状态机、保活、共享打开
- 对讲集成指南 / 主动安全附件集成指南 — 专题指南
- 终端录像上传和下载 — 查询、上传、下载
- 常见问题与排错 — 集成 FAQ
- 会话与 token — 鉴权方式与 token 有效期
- 在线监测工具程序 — 演示站点完整功能说明