GetMediaForFragmentList - Amazon Kinesis Video Streams
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

GetMediaForFragmentList

从 Amazon Kinesis 视频流中的存档数据中获取片段列表(由片段编号指定)的媒体。

注意

您必须先调用GetDataEndpoint API 才能获取终端节点。然后使用 --endpoint-url 参数将GetMediaForFragmentList请求发送到该端点

有关限制,请参阅 Kinesis Video Streams 限制

重要

如果在调用 Kinesis Video Streams 存档媒体 API 后引发错误,除了 HTTP 状态码和响应正文外,它还包括以下信息:

  • x-amz-ErrorTypeHTTP 标头 — 除了 HTTP 状态码提供的错误类型外,还包含更具体的错误类型。

  • x-amz-RequestIdHTTP 标头 — 如果您想向其报告问题Amazon,则支持团队在提供请求编号后可以更好地诊断问题。

HTTP 状态码和 ErrorType 标头都可用于就错误是否可重试以及在什么条件下进行编程决策,并提供有关客户端程序员可能需要采取哪些操作才能成功重试的信息。

有关更多信息,请参阅本主题底部的错误部分以及常见错误

请求语法

POST /getMediaForFragmentList HTTP/1.1 Content-type: application/json { "Fragments": [ "string" ], "StreamARN": "string", "StreamName": "string" }

URI 请求参数

该请求不使用任何 URI 参数。

请求正文

请求接受采用 JSON 格式的以下数据。

Fragments

要检索媒体的片段数量列表。您可以使用检索这些值ListFragments

类型:字符串数组

数组成员:最少 1 项。Maximum number of 1000 items.

长度限制:最小长度为 1。最大长度为 128。

模式:^[0-9]+$

必需:是

StreamARN

要从中检索其流的 Amazon Resource Name(ARN)。指定此参数或StreamName参数。

类型:字符串

长度限制:最小长度为 1。长度上限为 1024。

模式:arn:[a-z\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+

必需:否

StreamName

要从中检索片段媒体的流的名称。指定此参数或StreamARN参数。

类型:字符串

长度限制:最小长度为 1。长度上限为 256。

模式:[a-zA-Z0-9_.-]+

必需:否

响应语法

HTTP/1.1 200 Content-Type: ContentType Payload

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

响应将返回以下 HTTP 标头。

ContentType

所请求媒体的内容类型。

长度限制:最小长度为 1。最大长度为 128。

模式:^[a-zA-Z0-9_\.\-]+$

响应将以下内容作为 HTTP 正文返回。

Payload

Kinesis Video Streams 返回的有效载荷是来自指定直播的一系列区块。有关区块的信息,请参见PutMedia。Kinesis Video Streams 在GetMediaForFragmentList通话中返回的区块还包括以下其他 Matroska (MKV) 标签:

  • AWS_KINESISVIDEO_FRAGMENT_NUMBER-区块中返回的片段编号。

  • AWS_KINESISVIDEO_SERVER_SIDE_TIMESTAMP-片段的服务器端时间戳。

  • AWS_KINESISVIDEO_PRODUCER_SIDE_TIMESTAMP-片段的制作人端时间戳。

如果发生异常,将包括以下标签:

  • AWS_KINESISVIDEO_FRAGMENT_NUMBER-引发异常的片段的数量

  • AWS_KINESISVIDEO_EXCEPTION_ERROR_CODE-的整数码

  • AWS_KINESISVIDEO_EXCEPTION_MESSAGE-异常的文字描述

错误

有关所有操作常见错误的信息,请参阅常见错误

ClientLimitExceededException

Kinesis Video Streams 限制了请求,因为你已经超过了限制。稍后再尝试打电话。Kinesis Video Stream s

HTTP 状态代码:400

InvalidArgumentException

指定参数超出其限制、不支持或无法使用。

HTTP 状态代码:400

NotAuthorizedException

状态码:403,调用者无权对给定流执行操作,或者令牌已过期。

HTTP 状态代码:401

ResourceNotFoundException

GetImages当 Kinesis Video Streams 找不到你指定的直播时会抛出这个错误。

GetHLSStreamingSessionURL如果在请求的时间范围内没有片段PlaybackMode的流请求了带有LIVE_REPLAY ofON_DEMAND 或的会话,或者对于在过去 30 秒内没有片段PlaybackModeLIVE流请求了带有 of 的会话,则会GetDASHStreamingSessionURL引发此错误。

HTTP 状态代码:404

另请参阅

有关在特定语言的 Amazon 软件开发工具包中使用此 API 的更多信息,请参阅以下内容: