COLUMN
Amazon IVSリアルタイムストリーミングの録画方法
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
Amazon IVSリアルタイムストリーミングをご存知でしょうか?
2023年8月にリリースされた、Amazon Interactive Video Service(以下、IVS)の新機能リアルタイムストリーミングは、ホストから視聴者まで300ミリ秒未満のレイテンシーでライブストリームを配信出来るようになりました。
この記事では、ライブストリーム(以下配信)をHLS形式で録画し、Amazon S3に保存する方法をご紹介します。
今回は配信方法は割愛させて頂きます。配信方法については別記事「Amazon IVSの新機能 リアルタイムストリーミングのご紹介」にてご紹介させて頂きます。
1. コンポジションの作成
マネジメントコンソールでステージを作成後、ステージのページにある、コンポジションを開始ボタンをクリックします(下記画像右上部分)
レイアウトに関しては、お好みのレイアウトを選択して頂き、目的地の右上、送信先を追加ボタンをクリックします。
送信先タイプはS3バケットを選択します。
では、ストレージ設定から行きます。
今回は、新しくS3バケットを作成します。ストレージ設定を作成ボタンをクリックします。
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
2. S3の設定
次に、S3バケットの設定をします。
アクセス許可を編集します。
下記画像のようにパブリックアクセスをオフにします。
バケットポリシーは下記JSONに変更してください。
※Resourceのバケット名の変更をしないと上手く行きません。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "*",
"Resource": "arn:aws:s3:::バケット名/*"
}
]
}
Cross-Origin Resource Sharing (CORS)は下記のように設定してください。
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"HEAD"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": [
"Access-Control-Allow-Origin"
]
}
]
これでS3の設定は完了です。
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
3. エンコーダーの設定
下記画面に戻り、エンコーダー設定を作成ボタンをクリックします。
今回はデフォルトを選択しました。チューニングも可能ですので、用途に合わせてチューニングしてみてください。
S3バケットの作成とエンコーダーの作成が完了したら、作成したリソースをプルダウンから選択し、送信先を追加します。
最後に、コンポジションを開始ボタンをクリックします。
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
4. 録画されているHLS動画を閲覧してみます
HLS形式の動画をvideojsで再生する簡単なHTMLのソースコードで実行してみます。
/<recording_id>/<media_publish_id>/<destination_id>/composite/media/hls/multivariant.m3u8
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8" />
<script src="<https://cdn.jsdelivr.net/npm/hls.js@latest>"></script>
<title>テストサンプル</title>
</head>
<body>
<video id="video" controls>
<script>
if(Hls.isSupported()) {
var video = document.getElementById('video');
var hls = new Hls();
hls.loadSource('オブジェクトURL');
hls.attachMedia(video);
}
</script>
</body>
</html>
hls.loadSource(’URL’)については、S3バケットをみます。
バケット内の下記のパスの先にmultivariant.m3u8というリソースがあるので、そのリソースのページにある、オブジェクトURLを前述のソースコードに入力し、HTMLファイルを実行します。
実行結果は、下記のようになります。これは、2画面で配信している様子です。
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
5. 最後に
配信の様子がS3に自動で保存でき、さらには簡単なHTMLで実行出来ることが分かりました。
配信をする際には非常に便利ですね。ただ唯一気になる点としては、配信の映像ごとの録画には対応しておらず、複数配信の場合は複数の映像が1つにまとめられます。
IVSリアルタイムストリーミングの活用方法は多岐にわたると考えられるでしょう。
ぜひ、IVSリアルタイムストリーミングをご活用の際は、弊社までお問い合わせください。
RECOMMEND
その他のコラム
相談無料!プロが中立的にアドバイスいたします
クラウド・AWS・Azureでお困りの方はお気軽にご相談ください。