IVS プライベート取り込み - Amazon IVS

IVS プライベート取り込み

安全なライブビデオ取り込みを必要とするワークロードの場合、インターフェイス VPC (Virtual Private Cloud) エンドポイントを使用して、Amazon VPC と IVS 間の安全なプライベート接続を確立できます。これにより、IVS の取り込みトラフィックは AWS ネットワーク内にとどまり、パブリックインターネットを経由することはありません。インターフェイス VPC エンドポイントは AWS PrivateLink を使用しています。これは、Amazon VPC で Elastic Network Interface とプライベート IP を使用して AWS のサービス間のプライベート通信を可能にする AWS のテクノロジーです。詳細については、「Amazon Virtual Private Cloud」および「インターフェイス VPC エンドポイントを使用して AWS のサービスにアクセスする」(AWS PrivateLink) を参照してください。

インターフェイス VPC (Virtual Private Cloud) エンドポイントを使用して、Amazon VPC および IVS の間にプライベート接続を作成します。

Amazon VPC または AWS Direct Connect を介して RTMP(S) ストリームを IVS に取り込み、ビデオを IVS 低レイテンシーチャネルまたは IVS リアルタイムステージにプライベートに送信することができます。標準インターフェイス VPC エンドポイントの時間単位の使用料金とデータ処理料金が請求されます。詳細については、「インターフェイスエンドポイントの料金」を参照してください。この機能を有効にするために Amazon IVS の追加コストはかかりません。

Amazon VPC がサポートされているリージョンにあることを確認してください。

  • ap-northeast-1

  • ap-northeast-2

  • ap-south-1

  • ap-southeast-1

  • ap-southeast-2

  • eu-central-1

  • eu-north-1

  • eu-west-1

  • eu-west-3

  • sa-east-1

  • us-east-1

  • us-east-2

  • us-west-2

注: Amazon VPC はこれらのサポートされているリージョンのいずれかに存在する必要がありますが、IVS コントロールプレーンリソースは Amazon VPC と同じリージョンまたは AWS アカウントに存在する必要はありません。詳細については、「グローバルソリューション、リージョナルコントロール」を参照してください。

インターフェイス VPC エンドポイントを介してストリームを取り込むには、VPC エンドポイントの DNS 名と IVS リソース (チャネルまたはステージの取り込み設定) のストリームキーで構成されるプライベート取り込み URL を次の形式で使用します。

rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>

チャネルにストリーミングするには、「ストリーミングソフトウェアの設定」の説明に従ってチャネルを作成し、そのストリームキーを取得します。RTMP(S) または E-RTMP(S) を使用してステージにストリーミングするには、RTMP 取り込み設定を作成し、その関連するストリームキーを使用します。

以下は、インターフェイス VPC エンドポイントを使用した EC2 インスタンスから IVS チャネルまたはステージへのストリーミングに関する簡単なチュートリアルです。

ステップ 1: インターフェース VPC エンドポイントを作成する

各 VPC エンドポイントは、ご自身のアカウントの VPC に関連付ける必要があります。アカウントに既にデフォルトの VPC がある場合はそれを使用できます。それ以外の場合は、新しい VPC を作成します。VPC エンドポイントで IPv6 またはデュアルスタックを使用する場合は、VPC に IPv6 CIDR が割り当てられているサブネットがあることを確認します。

VPC エンドポイントを作成するには、「VPC エンドポイントの作成」(Amazon VPC ドキュメント内) の手順を参照してください。[エンドポイントの作成] ページに移動したら、次の操作を行います。

  1. [AWS のサービス] を選択します。次に、[サービス]セクションで IVS を検索します。com.amazonaws.<region>.ivs.contribute などのサービスが表示されます。

  2. [ネットワーク設定] セクションで、エンドポイントを作成する VPC を選択します。[サブネット] セクションで、エンドポイントに設定するサブネットとその他のネットワーク設定を選択します。

  3. [セキュリティグループ] セクションで、ストリーミングする場所から TCP ポート 443 および 1935 のインバウンドトラフィックを許可するセキュリティグループを選択します。エンドポイントを作成した後に編集できるため、使用するセキュリティグループがまだわからない場合は、現時点では選択しないでください。

[エンドポイントの作成] を選択すると、VPC エンドポイントの概要ページに戻り、先ほど作成した VPC エンドポイントが表示されます。

  • 新しいエンドポイントの [ステータス] は、約 30 秒間 [保留中] になります。その後、自動的に承認され、そのステータスは緑色の [使用可能] に変わります。

  • VPC エンドポイント情報パネルの右側に、VPC エンドポイントに関連付けられたいくつかの DNS 名が表示されます。リストされている最初のものをコピーして保存します。それを今後のステップでストリーム取り込みサーバーの URL として指定する必要があります。

ステップ 2: EC2 インスタンスを起動する

お客様が AWS からストリームをブロードキャストするために使用できるオプションは多数あります。こちらの例では、FFmpeg がインストールされた Ubuntu EC2 インスタンスを使用します。

まず、EC2 インスタンスを作成します (t2.micro で問題ありません)。VPC エンドポイントを作成したのと同じ VPC 内にインスタンスを作成します。

このインスタンスに割り当てるセキュリティグループには、TCP ポート 443 および 1935 の VPC エンドポイントへのエグレスが必要です。また、SSH を使用してインスタンスにアクセスする場合は TCP ポート 22 でイングレスを有効にし、以下のステップ 3 のパッケージマネージャーオペレーションでは TCP ポート 80 でエグレスが必要です。

インスタンスを起動します。初期化後、SSH または AWS Session Manager を使用してインスタンスに接続します。

ステップ 3: インスタンスに FFmpeg をインストールする

インスタンスに接続したら、マシンで次のコマンドを実行し (Ubuntu でインスタンスを作成した場合)、FFmpeg をインストールします。

sudo add-apt-repository ppa:savoury1/ffmpeg4 sudo apt-get update sudo apt-get install ffmpeg

ステップ 4: IVS チャネルまたはステージにストリーミングする

プライベート取り込み URL の形式は次のとおりです。

rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>

例:

rtmps://vpce-0a8dfb0b7a4611439-xyzabc12.contribute.ivs.us-west-2.vpce.amazonaws.com/app/sk-usw2-abc123example456

次の例の FFmpeg コマンドを実行し、<VPC_ENDPOINT_DNS_NAME> をステップ 1 の DNS 名に、<STREAM_KEY> を適切なストリームキー (チャネルまたは取り込み設定の場合) に置き換えます。

ffmpeg -re -f lavfi -i "testsrc=duration=360:size=1024x768:rate=30" -f lavfi -i "sine=frequency=1000" -pix_fmt yuv420p -profile:v baseline -level 3.0 -r 30 -g 60 -shortest -vcodec libx264 -acodec aac -f flv "rtmps://<VPC_ENDPOINT_DNS_NAME>/app/<STREAM_KEY>"

上記のすべてが成功すると、ストリームは実行されているはずです。VPC エンドポイントを通じて取り込まれたストリームは、パブリック IVS エンドポイントを介して取り込まれたストリームと同じように処理および扱われる必要があります。唯一の違いは、取り込みパスです。

使用が完了したら、不要な料金が発生しないように、作成した EC2 インスタンスと VPC エンドポイントを削除します。