英文 | 韩文 | 中文 | 日文

第3章 HLS API

配置

您可以在配置中设置多个HLS参数。

· HLS 列表大小: 设置播放列表条目的最大数量。默认值为3。此设置适用于没有指定时长的直播流和回放流。

· HLS 时间(秒): 设置片段的目标长度(以秒为单位)。默认值为1。经过此时间后,在下一个I帧处切割片段。适用于没有指定时长的直播流和回放流。

· HLS 时间(回放): 设置带有指定时长的回放流的目标片段长度(以秒为单位)。默认值为2。经过此时间后,在下一个I帧处切割片段。

除非必要,通常无需更改这些值。

 

请求直播HLS流

 Request
### 主流
http://<address>:<port>/hlsLive/ch[chno]/stream.m3u8
### 子流
http://<address>:<port>/hlsLive/ch[chno]_[sub]/stream.m3u8

· chno: 频道号。

· sub: 子流索引;1表示第一个子频道;2表示第二个子频道。

· 必须在配置中启用直播流。

 

请求录制视频HLS流

 Request
### 方法 1:以YYYYMMDDHHMMSS指定时间
http://<address>:<port>>/hlsPlayback?ch=<channel no>
    [&sub=<sub-stream index, default=0>]
    &time=<YYYYMMDDHHMMSS>&duration=<seconds>
### 方法 2:使用Unix时间戳指定时间
http://<address>:<port>/hlsPlayback?ch=<channel no>
    [&sub=<sub-stream index, default=0>]
    &timestamp=<Unix Timestamp>&duration=<seconds>

· ch: 频道号。

· sub: 子流索引;如果未提供,默认为0(主流)。

· time: 指定视频图像的确切时间,格式为 `YYYYMMDDHHMMSS`。

· timestamp: 以Unix时间戳格式指定视频图像的时间。

· duration:

· 如果时长设置为零(`0`),HLS视频将以直播模式流式播放,无法在视频时间内导航(不需要保持活跃信号)。

· 如果时长设置为正值,例如十秒(10),则需要每两秒发送一次保持活跃信号,以防止VMS服务器删除HLS视频文件。

 Response
{
  "id: "<id.no>",
  "path: "/hlsPlayback/id<id.no>/stream.m3u8"
}

· id: 用于发送保持活跃信号的唯一ID。此ID应在后续请求中使用以保持流的活跃状态。

· path: 访问HLS流的URL路径。

 

请求归档视频HLS流

 Request
http://<address>:<port>/reqFilePlayback?id=<file id>
    &timestamp=<Unix Timestamp>&duration=<seconds>

· id: 唯一文件ID。

· timestamp: 以Unix时间戳格式指定视频图像的时间。

· duration:

· 如果时长设置为零(`0`),HLS视频将以直播模式流式播放,无法在视频时间内导航(不需要保持活跃信号)。

· 如果时长设置为正值,例如十秒(10),则需要每两秒发送一次保持活跃信号,以防止VMS服务器删除HLS视频文件。

 Response
{
  "id: "<id.no>",
  "path: "/hlsFilePlayback/id<id.no>/stream.m3u8"
}

· id: 用于发送保持活跃信号的唯一ID。此ID应在后续请求中使用以保持流的活跃状态。

· path: 访问HLS流的URL路径。

 

发送保持活跃信号以便回放HLS流

 Request
### 录制视频
http://<address>:<port>>/reqPlaybackKeepAlive?id=<id.no>
### 归档视频回放
http://<address>:<port>>/reqFilePlaybackKeepAlive?id=<id.no>

· id_no: 您从“请求回放HLS流”响应中收到的唯一标识符。此ID用于保持HLS流的活跃状态。