跳到主要内容
版本:4.0.0

客户端编程基本流程

实时音视频播放(包括监听)

实时音视频播放是通过流媒体服务播放终端的实时音视频。其基本流程如下:

  1. 通过Websocket监听流媒体事件(使用Websocket接口的客户端因本身使用的是Websocket接口,故不需要此步骤)
  2. 调用打开实时音视频接口
  3. 检查接口返回结果,如果返回媒体已可用,则立即播放,同时启动保持定时器
  4. 否则等待流已经准备好的流媒体事件
  5. 收到流已经准备好的流媒体事件,立即播放,同时启动保持定时器
  6. 在播放期间,每当定时器到时,调用音视频流请求保持接口
  7. 当要停止播放时,调用关闭媒体请求接口,同时关闭保持定时器,销毁播放器

远程回放

远程回放是通过流媒体服务播放存储在终端上的历史音视频。其基本流程如下:

  1. 通过Websocket监听流媒体事件(使用Websocket接口的客户端因本身使用的是Websocket接口,故不需要此步骤)
  2. 调用查询终端远程录像接口,将返回结果展示给用户
  3. 用户选择要播放的资源文件后,调用打开远程录像回放接口
  4. 检查接口返回结果,如果返回媒体已可用,则立即播放,同时启动保持定时器
  5. 否则等待流已经准备好的流媒体事件
  6. 收到流已经准备好的流媒体事件,立即播放,同时启动保持定时器
  7. 在播放期间,每当定时器到时,调用音视频流请求保持接口
  8. 当要停止播放时,调用关闭媒体请求接口,同时关闭保持定时器,销毁播放器

终端录像上传和下载

可以通过流媒体服务,提取终端的远程录像文件。其基本流程如下:

  1. (可选)通过WebSocket订阅 /user/{token}/queue/av_upload录像文件上传状态通知
  2. 调用GET /strm/stored查询终端远程录像接口,查询终端上的录像文件
  3. 选择其中一个文件,用查询得到的录像文件信息调用POST /strm/stored/upload上传远程录像请求接口,请求终端上传文件到服务端
  4. 通过录像文件上传状态通知,或查询GET /strm/store/upload查询录像上传状态接口,确定录像上传已经完成
  5. 使用录像文件上传状态通知中携带的文件URL或查询录像上传状态接口返回的文件URL进行文件下载

对讲

对讲是通过流媒体服务建立与终端的双向音频通道,实现用户与司机的对话。其基本流程如下:

  1. 通过Websocket监听流媒体事件(使用Websocket接口的客户端因本身使用的是Websocket接口,故不需要此步骤)
  2. 调用打开实时音视频接口,指定数据类型为2: 双向对讲,接口会返回一个对讲音频推送的Websocket地址
  3. 检查接口返回结果,如果返回媒体已可用,跳到第5步
  4. 否则等待流已经准备好的流媒体事件,
  5. 开始播放终端推过来的音频,同时启动保持定时器,并建立对讲音频推送的Websocket连接,采集客户端麦克风的音频,向流媒体服务推送客户端音频
  6. 在播放期间,每当定时器到时,调用音视频流请求保持接口
  7. 当要停止播放时,调用关闭媒体请求接口,同时关闭保持定时器,销毁播放器,停止采集客户端音频

主动安全报警附件的提取、接收和下载

GT-Streaming流媒体服务内置主动安全报警附件接收服务,可接收、存储终端上传的主动安全报警附件。使用方式主要是由企业应用引导,其基本流程如下:

  1. 企业终端网关监测主动安全报警
  2. 发生主动安全报警时,根据自身的规则确定是否要提取报警附件
  3. 确定需要提取报警附件时,调用提取主动安全附件接口
  4. 流媒体服务将通过消息队列向企业的终端网关下发报警附件上传指令(0x9208)
  5. 由流媒体服务接收终端上传的报警附件,并保存在流媒体服务器上
  6. 当报警附件接收结束(成功或失败),流媒体服务通过消息队列发送ADAS附件提取结束通知
  7. 企业应用通过调用 查询主动安全报警附件 接口查询安全报警附件信息,该信息包含各文件的下载 URL,可通过 URL下载附件文件