GetClip - Amazon Kinesis Video Streams

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

GetClip

アーカイブされたオンデマンドメディアを含むMP4ファイル (クリップ) を、指定された時間範囲で指定されたビデオストリームからダウンロードします。

StreamName と StreamARN パラメータはどちらもオプションですが、このAPIオペレーションを呼び出すときに StreamName または StreamARN のいずれかを指定する必要があります。

注記

エンドポイントを取得するには、まず GetDataEndpointAPIを呼び出す必要があります。次に、--endpoint-url parameter を使用して GetClip リクエストをこのエンドポイントに送信します。

Amazon Kinesis ビデオストリームには、 を介してデータを提供するための以下の要件がありますMP4。

  • 動画再生トラックの要件

  • データの保持期間が 0 より大きい。

  • 各フラグメントのビデオトラックには、H.264 形式および H.265 形式の高度なビデオコーディング (AVC) HEVC のコーデックプライベートデータが含まれている必要があります。詳細については、MPEG「-4 仕様 ISO/IEC 14496-15」を参照してください。ストリームデータを特定の形式に適応させる方法については、NAL「適応フラグ」を参照してください。

  • 各フラグメントのオーディオトラック (存在する場合) には、コーデックのプライベートデータが AAC ( AAC仕様 ISO/IEC 13818-7) または MS Wave 形式の で含まれている必要があります。

GetClip.OutgoingBytes Amazon CloudWatch メトリクスをモニタリングすることで、送信データ量をモニタリングできます。を使用して Kinesis Video Streams をモニタリング CloudWatch する方法については、「Kinesis Video Streams のモニタリング」を参照してください。料金情報については、Amazon Kinesis Video Streams」を参照してください。 AWS送信 AWS データの料金が適用されます。

重要

各フラグメントに含まれるコーデックプライベートデータ (CPD) には、フラグメントを適切にデコードするために必要なフレームレート、解像度、エンコーディングプロファイルなどのコーデック固有の初期化情報が含まれています。CPD 変更は、結果のクリップのターゲットフラグメント間ではサポートされていません。は、クエリされたメディアを通じて一貫性を保つCPD必要があります。そうしないと、エラーが返されます。

重要

トラックの変更はサポートされていません。トラックは、クエリされたメディア全体で一貫性を維持する必要があります。ストリーム内のフラグメントがビデオのみからオーディオとビデオの両方に変わった場合、またはAACオーディオトラックが A-Law オーディオトラックに変更された場合、エラーが返されます。

リクエストの構文

POST /getClip HTTP/1.1 Content-type: application/json { "ClipFragmentSelector": { "FragmentSelectorType": "string", "TimestampRange": { "EndTimestamp": number, "StartTimestamp": number } }, "StreamARN": "string", "StreamName": "string" }

URI リクエストパラメータ

リクエストはURIパラメータを使用しません。

リクエスト本文

リクエストは、 JSON形式の次のデータを受け入れます。

ClipFragmentSelector

要求されたクリップの時間範囲とタイムスタンプのソース。

型: ClipFragmentSelector オブジェクト

必須:はい

StreamARN

メディアクリップを取得するストリームの Amazon リソースネーム (ARN)。

StreamName またはストリーム のいずれかを指定する必要がありますARN。

型: 文字列

長さの制限: 最小長は 1 です。最大長は 1,024 です。

パターン: arn:[a-z\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+

必須: いいえ

StreamName

メディアクリップを取得するストリームの名前。

StreamName またはストリーム のいずれかを指定する必要がありますARN。

型: 文字列

長さの制限:最小長は 1 です。最大長は 256 です。

Pattern: [a-zA-Z0-9_.-]+

必須:いいえ

レスポンスの構文

HTTP/1.1 200 Content-Type: ContentType Payload

レスポンス要素

アクションが成功すると、サービスは 200 HTTP レスポンスを返します。

レスポンスは次のHTTPヘッダーを返します。

ContentType

要求されたクリップ内のメディアのコンテンツタイプ。

長さの制限:最小長は 1 です。最大長は 128 です。

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

レスポンスは本文として以下を返しますHTTP。

Payload

指定したビデオストリームのメディアクリップを含む従来のMP4ファイル。出力には、指定された開始タイムスタンプから (最初の) 100 MB 分のフラグメントまたは 200 個のフラグメントが含まれます。詳細については、「Kinesis Video Streams のクォータ」を参照してください。

エラー

すべてのアクションに共通のエラーについては、「共通エラー」を参照してください。

ClientLimitExceededException

制限を超えたため、Kinesis Video Streams がリクエストをスロットリングしました。後で呼び出しを試みてください。制限の詳細については、「Kinesis Video Streams のクォータ」を参照してください。

HTTP ステータスコード: 400

InvalidArgumentException

指定されたパラメータが制限を超えているか、サポートされていない、または使用できません。

HTTP ステータスコード: 400

InvalidCodecPrivateDataException

ビデオストリームの少なくとも 1 つのトラックにあるコーデックのプライベートデータは、この操作には無効です。

HTTP ステータスコード: 400

InvalidMediaFrameException

要求されたクリップの 1 つまたは複数のフレームは、指定されたコーデックに基づいて解析できませんでした。

HTTP ステータスコード: 400

MissingCodecPrivateDataException

ビデオストリームの少なくとも 1 つのトラックにコーデックのプライベートデータがありませんでした。

HTTP ステータスコード: 400

NoDataRetentionException

GetImages は、データを保持しない (つまり、 が 0 DataRetentionInHoursである) ストリームに対してリクエストされました。

HTTP ステータスコード: 400

NotAuthorizedException

ステータスコード: 403 呼び出し元が指定されたストリームで操作を実行する権限がないか、トークンの有効期限が切れています。

HTTP ステータスコード: 401

ResourceNotFoundException

GetImages は、指定したストリームが Kinesis Video Streams で見つからない場合に、このエラーをスローします。

GetHLSStreamingSessionURL リクエストされた時間範囲内にフラグメントがないストリームに対して ON_DEMANDまたは PlaybackModeのセッションLIVE_REPLAYがリクエストされた場合、または過去 30 秒以内にフラグメントがないストリームに対して PlaybackModeのセッションLIVEがリクエストされた場合、 と はこのエラーをGetDASHStreamingSessionURLスローします。

HTTP ステータスコード: 404

UnsupportedStreamMediaTypeException

メディアのタイプ (例えば、h.264 または h.265 ビデオ、AACまたは G.711 オーディオ) は、再生セッションの最初のフラグメントのトラックIDsのコーデックから決定できませんでした。トラック 1 のコーデック ID は V_MPEG/ISO/AVC である必要があります。また、オプションでトラック 2 のコーデック ID は A_AAC である必要があります。

HTTP ステータスコード: 400

以下の資料も参照してください。

言語固有の のいずれかAPIでこれを使用する方法の詳細については AWS SDKs、以下を参照してください。