メディアストリームパイプラインを作成する - Amazon Chime SDK

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

メディアストリームパイプラインを作成する

チャイムメディアストリームパイプラインは、Amazon Chime SDK ミーティングと同じ AWS アカウントに属している必要があります。Amazon Chime SDK メディアストリームパイプラインを作成するには、 CreateMediaStreamPipeline API を呼び出し、ソースとシンクを指定します。

次の図は、Amazon Chime SDK メディアストリームパイプラインのアーキテクチャを示しています。図の数字は、次の各説明の番号に対応しています。

メディアストリームプールを作成する API コールを示した図。

図中の手順を説明します。

  1. CreateMediaStreamPipeline API を呼び出します。リクエストでは、ストリームのソースとシンクを指定します。個別の音声、混合音声、またはその両方のどれをキャプチャするのかを指定します。KVS プールの ARN をリクエストに含めます。

    • ソース配列は SourceTypeSourceArn で構成されます。ChimeSdkMeeting SourceType を使用する必要があり、SourceArnChimeSdkMeeting の ARN です。

    • シンク配列は SinkTypeSinkArnReservedStreamCapacityMediaStreamType で構成されます。KinesisVideoStreamPoolSinkType のみがサポートされており、SinkArnKinesisVideoStreamPool の ARN です。MediaStreamType では、シンクにストリーミングされるメディアのタイプ (MixedAudio または IndividualAudio) を制御します。ReservedStreamCapacity では、KinesisVideoStreamPool から MediaStreamType に対して割り当てるストリームの数を設定します。

      • IndividualAudioMixedAudio の両方をストリーミングしたい場合は、Sinks 配列に 2 つのシンクオブジェクト (1 つは IndividualAudio 用、もう 1 つは MixedAudio 用) を作成します。SinkArn (KinesisVideoStreamPool の ARN) はシンクごとに異なる場合があります。

      • 個別の音声または混合音声のみをストリーミングするには、目的の MediaStreamType でシンクオブジェクトを 1 つ作成します。

    • 次の点に注意してください。

      • KinesisVideoStreamPoolとして CreateMediaStreamPipeline API を呼び出す場合SinkTypeCreateMediaStreamPipelineは呼び出されるコントロールプレーンリージョンに属しているSinkARN必要があります。

        例えば、us-east-1 でメディアストリームパイプラインを作成する場合は、us-east-1KinesisVideoStreamPool を使用する必要があります。

      • ReservedStreamCapacity は、MixedAudio MediaStreamType を指定する場合は 1 に、IndividualAudio MediaStreamType を指定する場合は 1-10 の間にする必要があります。

  2. メディアパイプラインデータプレーンは KVS PutMedia API を呼び出して、指定した KVS プールに属する KVS ストリームに個々のオーディオを保存します。

  3. メディアパイプラインデータプレーンでは KVS PutMedia API を呼び出して、指定した KVS プールに属するストリームに混合音声を保存します。

注記

CreateMediaStreamPipeline API を呼び出すと、ビルダーはメディアパイプラインイベントを使用するか、 GetMediaPipeline API を呼び出してパイプラインの状態が かどうかを判断できますInProgress

パイプラインの状態が InProgress に達すると、メディア (IndividualAudioMixedAudio を任意に組み合わせたもの) が KVS にストリーミングされます。

IndividualAudio ストリームタイプでは、参加者 ID と KinesisVideoStreamPool から割り当てられた KVS ストリーム間に 1:1 のマッピングが存在します。このマッピングは、メディアパイプラインの存続期間にわたって適用されます。

どの KVS ストリームが参加者 ID にマッピングされるか、または に割り当てられているかを知るには MixedAudio、次のいずれかの方法を使用します。

  • Event Bridge 通知を使用する。それぞれの通知には、参加者 ID や参加者の音声をストリーミングする KVS ARN などの情報が表示されます。IndividualAudio または MixedAudio ストリーミングセッションが開始されると、chime:MediaPipelineKinesisVideoStreamStart イベントが送信されます。ストリーミングセッションは、参加者が通話から退出するか (IndividualAudio の場合)、会議が終了すると終了します。

  • Kinesis Video Streams で各フラグメントと共に送信される永続メタデータを使用します。このメタデータには、Event Bridge で送信されるものと同様の情報が含まれています。ビルダーは、このソリューションを使用して Kinesis Video Streams API ListStreams のプレフィックスとしてプール名を指定KinesisVideoStreamPoolして、 のすべてのストリームを解析する必要があります。

メディアストリームパイプラインの終了は、会議が削除されるか、そのメディアストリームパイプラインの DeleteMediaPipeline API が呼び出されたときに発生します。メディアパイプラインの終了を示す Event Bridge 通知も送信されます。