GetImages - Amazon Kinesis Video Streams

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

GetImages

影像的受管支援提供一種完全受管的方式,從 Kinesis Video Streams 中串流和存放的影片資料取得影像。您可以使用映像來執行機器學習 (ML) 工作負載,例如人員、寵物或車輛偵測。影像也可以用來新增互動式元素到播放,例如動作事件的影像預覽和影片剪輯的清除。

GetImages 也會擷取與指定時間範圍、取樣間隔和影像格式組態的每個時間戳記對應的影像清單。

注意

您必須先呼叫 GetDataEndpoint API 才能取得端點。然後使用 --endpoint-url 參數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

類型:Timestamp

必要:是

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。任何其他結果都會進行分頁。

類型:Long

有效範圍:最小值為 1。最大值為 100。

必要:否

NextToken

指定在何處開始分頁下一組影像的權杖。這是先前截斷的回應GetImages:NextToken中的 。

類型:字串

長度限制:長度下限為 1。長度上限為 4096。

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

必要:否

SamplingInterval

需要從串流產生影像的時間間隔,以毫秒 (ms) 為單位。可以提供的最小值為 200 毫秒 (每秒 5 張影像)。如果時間戳記範圍小於取樣間隔,startTimestamp則會在可用時傳回來自 的映像。

類型:整數

必要:否

StartTimestamp

應產生影像的起點。這StartTimestamp必須在時間戳記的包含範圍內,才能傳回影像。

類型:Timestamp

必要:是

StreamARN

要從中擷取映像之串流的 Amazon Resource Name (ARN)。您必須指定 StreamNameStreamARN

類型:字串

長度限制:長度下限為 1。長度上限為 1024。

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

必要:否

StreamName

要從中擷取影像的串流名稱。您必須指定 StreamNameStreamARN

類型:字串

長度限制:長度下限為 1。長度上限為 256。

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

必要:否

WidthPixels

HeightPixels 參數搭配使用的輸出映像寬度。同時提供 WidthPixelsHeightPixels 參數時,影像會延伸以符合指定的長寬比。如果只提供 WidthPixels 參數,或只HeightPixels提供 ,ValidationException則會擲出 。如果未提供參數,則會傳回串流的原始影像大小。

類型:整數

有效範圍:最小值為 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 Video Streams 配額

HTTP 狀態碼:400

InvalidArgumentException

指定的參數超過其限制、不支援或無法使用。

HTTP 狀態碼:400

NoDataRetentionException

GetImages 請求的串流不會保留資料 (也就是 DataRetentionInHours的 為 0)。

HTTP 狀態碼:400

NotAuthorizedException

狀態碼:403,發起人未獲授權在指定的串流上執行 操作,或權杖已過期。

HTTP 狀態碼:401

ResourceNotFoundException

GetImages 當 Kinesis Video Streams 找不到您指定的串流時, 會擲回此錯誤。

GetHLSStreamingSessionURL 如果LIVE_REPLAY請求的串流具有 ON_DEMANDPlaybackMode的工作階段在請求的時間範圍內沒有片段,或請求的串流具有 PlaybackMode的工作階段在過去 30 秒內沒有片段,LIVEGetDASHStreamingSessionURL擲回此錯誤。

HTTP 狀態碼:404

另請參閱

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊,請參閱下列內容: