翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ステップ 5: ストリーミングソフトウェアの設定
以下の方法で Amazon IVS にストリーミング (低レイテンシー) できます。
-
RTMPS をサポートする、ネイティブの IVS Broadcast SDK。特に本稼働シナリオでは、こちらをお勧めします。
-
Amazon IVS コンソール – ストリームのテストに適しています。
-
その他のストリーミングソフトウェア – Open Broadcast Software (OBS) と FFmpeg の 2 つの例について以下で説明します。これらは、Amazon IVS 同様に RTMPS および RTMP をサポートしています。RTMPS は、暗号化された TLS ストリームを使用して、高セキュリティを実現します。RTMPS または RTMP をサポートする任意のストリーミングソフトウェアを使用できます。
キーエンコーダの設定は、キーフレーム間隔(2 秒)と解像度/ビットレート/フレームレート(相互に関連する)です。エンコーダ設定の詳細については、次を参照してください。
-
Amazon IVS ユーザーガイドの「ストリーミング設定」を参照してください。
-
ブログ記事: Setting Up for Streaming with Amazon Interactive Video Service
注意:
-
Amazon IVS ストリームの最大継続時間は 48 時間です。その後、ストリームは終了し、ストリーミングセッションは切断されます。(自動または手動で) 正常に再接続すると、新しいストリームが開始されます。
-
エンコーダーが (一時的なネットワークの問題などの原因で) データの送信を停止した場合、Amazon IVS は 30 秒間待機します。この間にブロードキャスターのデータが受信されない場合、Amazon IVS の接続が解除されます。
Amazon IVS Broadcast SDK によるストリーミング
iOS または Android アプリケーションからブロードキャストするには、Amazon IVS Broadcast SDK を使用できます。ブロードキャスト SDK は Amazon IVS アーキテクチャを活用し、Amazon IVS と共に継続的な改善と新しい機能を見ていきます。ネイティブのモバイルブロードキャスト SDK として、アプリケーションおよびユーザーがアプリケーションにアクセスするデバイスに対するパフォーマンスへの影響を最小限に抑えるように設計されています。
以下からブロードキャストするには..。 | 以下を使用できます..。 | メモ |
---|---|---|
Android または iOS アプリケーション | Amazon IVS Android または iOS Broadcast SDK | ネイティブのモバイルブロードキャスト SDK として、アプリケーションおよびユーザーがアプリケーションにアクセスするデバイスに対するパフォーマンスへの影響を最小限に抑えるように設計されています。 |
ウェブ環境 | Amazon IVS Web Broadcast SDK | Web Broadcast SDK として、Amazon IVS Web Broadcast SDK を使用すると、WebRTC を使用してウェブ環境からブロードキャストできます。クロスブラウザとクロスプラットフォームをサポートします。 |
詳細については、「IVS Broadcast SDK (低レイテンシーストリーミング)」を参照してください。
Amazon IVS コンソールを使用したストリーミング
-
Amazon IVS コンソール
を開きます。 (AWS マネジメントコンソール
から Amazon IVS コンソールにアクセスすることもできます。) -
ナビゲーションペインで、[チャンネル] を選択します。(ナビゲーションペインが折りたたまれている場合は、ハンバーガーアイコンを選択して展開します)
-
ブロードキャスト先のチャネルを選択し、その詳細ページに移動します。
-
[ブロードキャスト] タブを選択します。(これらのタブは、[一般的な設定] セクションの下にあります)
-
カメラとマイクへの IVS コンソールアクセスを許可するように求められます。これらの権限を許可してください。
-
[ブロードキャスト] タブの下部にあるドロップダウンボックスを使用して、マイクとカメラの入力デバイスを選択します。
-
ストリーミングを開始するには、[ブロードキャストを開始] を選択します。
-
ライブストリームを視聴するには、[再生] タブに移動します。
注: ストリームを開始した後、[再生] タブで視聴できるようになるまでに、短い遅延 (通常は 30 秒未満) が発生することが予想されます。
この機能を使うと、複数のチャネルに同時にブロードキャストできます。
注: コンソールからのストリーミングはリソースを消費するため、ライブ動画入力コストが発生します。詳細については、「IVS 料金表」の「ライブ動画入力にかかるコスト
OBS Studio によるストリーミング
(OBS Studio
OBS Studio を起動して実行するには、次のステップに従います。
-
ソフトウェアをダウンロードしてインストールします: https://obsproject.com/download
。 -
OBS Studio を初めてロードするときに表示される、OBS Studio の自動設定ウィザードを実行します。ステップに従い、デフォルト値を受け入れます。
-
[ストリーム情報] で、[サービス] ドロップダウンから [カスタム...] を選択し、[サーバー (取り込みサーバー)] と [ストリームキー] を入力します。
Amazon IVS コンソールでチャネルを作成した場合:
-
OBS で入力するサーバーは、コンソールの取り込みサーバーです。
rtmps://a1b2c3d4e5f6.global-contribute.live-video.net:443/app/
-
OBS で入力するストリームキーは、コンソールのストリームキーです。
sk_us-west-2_abcd1234efgh5678ijkl
AWS CLI でチャネルを作成した場合:
-
OBS に入力するサーバーは、以下の 4 つの組み合わせです。
-
取り込みプロトコル:
rtmps://
(注: 安全でない取り込みストリーミング用のチャネルを作成した場合はrtmp://
を指定してください) -
CLI レスポンスからの IngestEndpoint:
a1b2c3d4e5f6.global-contribute.live-video.net
-
ポート:
443
-
パス:
/app/
完全なエントリは次のとおりです。
rtmps://a1b2c3d4e5f6.global-contribute.live-video.net:443/app/
-
-
OBS で入力するストリームキーは、CLI レスポンスの StreamKey 値です。
sk_us-west-2_abcd1234efgh5678ijkl
-
-
動画出力の解像度とビットレートについては、「Amazon IVS ストリーミング設定」の「チャネルタイプ」を参照してください。OBS ウィザードで選択したいずれかの値が Amazon IVS で許可されている値を超える場合は、Amazon IVS への接続に失敗しないように手動で値を調整する必要があります。ウィザードの完了後、次の操作を行います。
-
動画の解像度を調整するには、[Settings > Video > Output (Scaled) Resolution] (設定 > 動画 > 出力 (スケーリング) 解像度) を使用します。
-
動画のビットレートを調整するには、[Settings > Output > Streaming > Video Bitrate] (設定 > 出力 > ストリーミング > 動画ビットレート) を使用します。
-
-
ストリームの安定性を高め、ビューア再生時のバッファリングを回避するために、2 秒間のキーフレーム間隔をお勧めします。ウィザードが完了したら、[Settings > Output > Output Mode] (設定 > 出力 > 出力モード) に進み、[Advanced] (アドバンスト) を選択し、[Streaming] (ストリーミング) タブで [Keyframe Interval] (キーフレーム間隔) が 2 になっていることを確認します。
-
OBS Studio のメインウィンドウで、[Start Streaming (ストリーミングの開始)] を選択します。
OBS Studio によるストリーミングの詳細については、OBS Studio Quickstart
OBS の設定は後で手動で変更できます。
-
[Settings (設定) > Stream (ストリーム)] を選択します。
-
ドロップダウンから、[Custom (カスタム)] を選択します。
-
サーバーおよび/またはストリームキーに貼り付けます。
ウィザードはいつでも再実行できます。[Tools (ツール) > Auto-Configuration Wizard (自動構成ウィザード)] を選択してください。
オプションで、ライブストリームをSettings (設定) > General (全般)にローカルに保存することで、後で使用できます。前述のように、ブロードキャストと AWS 間または AWS 内のネットワークの問題により、ストリームの録画中にデータが失われる可能性があります。このような場合、Amazon IVS は録画よりもライブストリームを優先します。ストリーミングツールでローカルに録画することで、冗長性が得られます。
OBS Studio のアップデートを定期的にチェックして、最新バージョンに更新することをお勧めします。(例えば、「Failed to connect to server (サーバーへの接続に失敗しました) 」というエラーが表示された場合は、RTMPS をサポートしていない古いバージョンの OBS Studio を使用している可能性があります。)
FFmpeg による録画動画のストリーミング
以下のステップに従ってください。
-
FFmpeg をダウンロードしてインストールします。https://www.ffmpeg.org/download.html
。 -
$VIDEO_FILEPATH
をストリーミングする MP4 動画の場所に設定します。VIDEO_FILEPATH=/home/test/my_video.mp4
-
STREAM_KEY
を StreamKey 値 に設定します。STREAM_KEY=sk_us-west-2_abcd1234efgh5678ijkl
-
(ingestEndpoint に
INGEST_ENDPOINT
を設定します (AWS CLI から)。INGEST_ENDPOINT=a1b2c3d4e5f6.global-contribute.live-video.net
-
次のターミナルコマンドでストリーミングを開始します (これはすべて 1 行です)。
ffmpeg -re -stream_loop -1 -i $VIDEO_FILEPATH -r 30 -c:v libx264 -pix_fmt yuv420p -profile:v main -preset veryfast -x264opts "nal-hrd=cbr:no-scenecut" -minrate 3000 -maxrate 3000 -g 60 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmps://$INGEST_ENDPOINT:443/app/$STREAM_KEY
上記のコマンドは一例です。プロダクションストリーミングの場合は、必要に応じてパラメータを調整します。