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 Stream s 限制。

重要

如果在调用 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 个项目。最多 1000 项。

长度限制:长度下限为 1。长度上限为 128。

模式:^[0-9]+$

必需:是

StreamARN

要从中检索片段媒体的流的 Amazon 资源名称 (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 Streams 限制。

HTTP 状态代码:400

InvalidArgumentException

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

HTTP 状态代码:400

NotAuthorizedException

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

HTTP 状态代码:401

ResourceNotFoundException

GetImages当 Kinesis Video Streams 找不到你指定的直播时,将引发此错误。

GetHLSStreamingSessionURL如果请求PlaybackMode的会话在请求的时间范围内LIVE_REPLAY没有片段,ON_DEMAND或者在过去 30 秒内没有片段的流请求PlaybackModeLIVE会话为或时,则会GetDASHStreamingSessionURL抛出此错误。

HTTP 状态代码:404

另请参阅

有关在特定语言的 Amazon SDK 中使用此 API 的更多信息,请参阅以下内容: