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

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

GetImages

检索给定时间范围、采样间隔和图像格式配置内与每个时间戳对应的图像列表。

请求语法

POST /getImages HTTP/1.1 Content-type: application/json { "EndTimestamp": number, "Format": "string", "FormatConfig": { "string" : "string" }, "HeightPixels": number, "ImageSelectorType": "string", "MaxResults": number, "NextToken": "string", "SamplingInterval": number, "StartTimestamp": number, "StreamARN": "string", "StreamName": "string", "WidthPixels": number }

URI 请求参数

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

请求正文

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

EndTimestamp

要生成的图像范围的结束时间戳。如果时间范围介于StartTimestampEndTimestamp超过 300 秒StartTimestamp,你会收到IllegalArgumentException

类型:时间戳

必需:是

Format

将用于对图像进行编码的格式。

类型:字符串

有效值:JPEG | PNG

必需:是

FormatConfig

键值对结构的列表,其中包含生成图像时可以应用的额外参数。这个FormatConfig关键是JPEGQuality,它表示用于生成图像的 JPEG 质量密钥。这个FormatConfig值接受从 1 到 100 的整数。如果值为 1,则生成的图像质量较差,压缩效果最佳。如果该值为 100,则生成质量最好、压缩程度较低的图像。如果未提供任何值,则为的默认值JPEGQuality密钥将设置为 80。

类型:字符串到字符串映射

地图条目:最大数量为 1 个项目。

有效密钥:JPEGQuality

值长度约束:最小长度为 0。长度上限为 256。

价值模式:^[a-zA-Z_0-9]+

必需:否

HeightPixels

与输出图像结合使用的输出图像的高度WidthPixels参数。当两者都有HeightPixelsWidthPixels提供了参数,将对图像进行拉伸以适合指定的长宽比。如果只有HeightPixels提供了参数,其原始纵横比将用于计算WidthPixels比率。如果两个参数都未提供,则将返回原始图像尺寸。

类型:整数

有效范围:最小值为 1。最大值为 2160。

必需:否

ImageSelectorType

用于生成图像的服务器或生产者时间戳的来源。

类型:字符串

有效值:PRODUCER_TIMESTAMP | SERVER_TIMESTAMP

必需:是

MaxResults

API 返回的最大图像数。

注意

每个 API 响应的默认限制为 25 张图片。提供一个MaxResults大于此值将导致页面大小为 25。任何其他结果都将被分页。

类型:长整型

有效范围:最小值为 1。最大值为 100。

必需:否

NextToken

一种标记,用于指定从哪里开始对下一组图像进行分页。这是GetImages:NextToken来自先前截断的响应。

类型:字符串

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

模式:[a-zA-Z0-9+/]+={0,2}

必需:否

SamplingInterval

需要从流中生成图像的时间间隔(以毫秒 (ms) 为单位)。可以提供的最小值为 200 ms(每秒 5 张图像)。如果时间戳范围小于采样间隔,则来自的图像startTimestamp如果可用,将退回。

类型:整数

必需:是

StartTimestamp

生成图像的起点。这个StartTimestamp必须处于包含的时间戳范围内,才能返回图像。

类型:时间戳

必需:是

StreamARN

从中检索图像的流的亚马逊资源名称 (ARN)。您必须指定StreamName或者StreamARN

类型:字符串

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

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

必需:否

StreamName

要从中检索图像的流的名称。您必须指定StreamName或者StreamARN

类型:字符串

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

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

必需:否

WidthPixels

与输出图像结合使用的输出图像的宽度HeightPixels参数。当两者都有WidthPixelsHeightPixels提供了参数,将对图像进行拉伸以适合指定的长宽比。如果只有WidthPixels提供了参数,或者如果只有HeightPixels提供了,aValidationException将被抛出。如果两个参数都未提供,则将返回流中的原始图像尺寸。

类型:整数

有效范围:最小值为 1。最大值为 3840。

必需:否

响应语法

HTTP/1.1 200 Content-type: application/json { "Images": [ { "Error": "string", "ImageContent": "string", "TimeStamp": number } ], "NextToken": "string" }

响应元素

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

服务以 JSON 格式返回的以下数据。

Images

从视频流生成的图像列表。如果给定时间戳内没有可用的媒体,NO_MEDIA错误将在输出中列出。如果在生成图像时出现错误,MEDIA_ERROR将在输出中列为图像丢失的原因。

类型:Image 对象数组

NextToken

请求中使用的加密令牌,用于获取更多图像。

类型:字符串

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

模式:[a-zA-Z0-9+/]+={0,2}

错误

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

ClientLimitExceededException

Kinesis Video Streams 限制了请求,因为你已经超过了限制。稍后再试打电话。有关限制的信息,请参见Kinesis 视频直播限制

HTTP 状态代码:400

InvalidArgumentException

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

HTTP 状态代码:400

NotAuthorizedException

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

HTTP 状态码:401

ResourceNotFoundException

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

GetHLSStreamingSessionURLGetDASHStreamingSessionURL如果会话为,则抛出此错误PlaybackModeON_DEMAND要么LIVE_REPLAY对于在请求的时间范围内没有片段的流,或者如果会话有PlaybackModeLIVE请求在过去 30 秒内没有片段的流。

HTTP 状态代码:404

另请参阅

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