更新时间:2021-12-27 GMT+08:00
分享

获取视频流地址

功能介绍

此接口用于获取指定视频流的地址。该地址用于进行视频流推流或者拉流。

  • 实时视频流,可以通过该接口返回的pull_flow_address参数值获取视频流地址。

  • 如果编码格式是H264、H265,均可通过该接口返回的hls_pull_flow_address和pull_flow_address获取视频流地址。

  • 对于RTMP类型的视频流,该接口可以获取到推流地址(对应push_flow_address参数值),通过该地址,可以将视频流推到VIS中。

当因网络或其它原因,导致视频流中断后自动恢复时,推流地址或拉流地址可能发生变化。请重新调用该接口,并尝试使用新的推流地址再次进行推流。在灾备场景下,拉流地址可能会发生变化,导致已获取的相应地址无效,请重新调用该接口获取新的地址。

为防止接入视频被泄露和盗链,获取的拉流地址中包含防盗链,防盗链的有效期默认为24小时(后续将支持自定义防盗链有效期)。为避免因防盗链超过有效期导致接入视频无法播放,请您在有效期内重新调用该接口获取新的防盗链地址。

调试

您可以在API Explorer中调试该接口。

URI

GET /v1/{project_id}/streams/{stream_name}/endpoint

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方法请参考获取项目ID

stream_name

String

视频流名称

表2 Query参数

参数

是否必选

参数类型

描述

expire_time

Integer

获取的视频流拉流地址的有效时间,设置范围为[600,604800],单位:秒。建议设置为8小时以内。

默认值24小时。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

普通租户的token。

Authorization

String

使用AK/SK方式认证时必选,携带的鉴权信息。

X-Sdk-Date

String

使用AK/SK方式认证时必选,请求的发生时间。

X-Project-Id

String

使用AK/SK方式认证时必选,携带项目ID信息。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

pull_flow_address

String

拉流地址,视频流编码格式为H264和H265均会返回该字段。如果视频流的共享类型为PRIVATE(非共享),拉流时必须在请求头中添加X-Auth-Token,值为创建视频流的用户的token。

push_flow_protocol

String

只有RTMP类型的流,该字段才有实际参考意义,代表推流协议。

push_flow_address

String

只有RTMP类型的流,该字段才有实际参考意义,代表推流地址。

hls_pull_flow_address

String

HLS(HTTP Live Streaming)拉流地址,视频编码格式为H265和H264均会返回HLS拉流地址。

请求示例

GET /v1/aecdc9b7********9fbc5b04f1d9b525/streams/channel_06640495271320000********/endpoint

响应示例

状态码: 200

请求响应成功

  • 示例 1

    {
      "pull_flow_address" : "https://vps-cn-north-7-cloud.hwcloudvis.com/mss-stable-work001/live?app=vis&stream=xxxxn&project_id=aecdc9b7********9fbc5b04f1d9b525&key=8930f********15cd409b1b8fbe9b8cb&t=1629790048",
      "push_flow_protocol" : "HTTP-FLV",
      "push_flow_address" : "100.95.***.222",
      "hls_pull_flow_address" : "https://vps-cn-north-7-cloud.hwcloudvis.com/mss-stable-work001/hls/xxxxn.m3u8?project_id=aecdc9b7********9fbc5b04f1d9b525&key=8930f********15cd409b1b8fbe9b8cb&t=1629790048"
    }
  • 示例 2

    {
      "push_flow_protocol" : "GB/T28181",
      "push_flow_address" : "100.95.***.93",
      "hls_pull_flow_address" : "https://vps-cn-north-7-cloud.hwcloudvis.com/mss-stable-work002/hls/channel_06640495271320000********.m3u8?project_id=aecdc9b7********9fbc5b04f1d9b525&key=6eeea********db10dcf3fa30c20d249&t=1629789339",
      "pull_flow_address" : "https://vps-cn-north-7-cloud.hwcloudvis.com/mss-stable-work002/live?app=vis&stream=channel_06640495271320000********&project_id=aecdc9b7********9fbc5b04f1d9b525&key=6eeea********db10dcf3fa30c20d249&t=1629789339"
    }

状态码: 400

请求错误。具体返回错误码请参考错误码说明

{
  "error_msg" : "Stream is not activated successfully, please retry. Can not get endpoint.",
  "error_code" : "VIS.0204"
}

状态码

状态码

描述

200

请求响应成功

400

请求错误。具体返回错误码请参考错误码说明

分享:

    相关文档

    相关产品

close