こんにちはアジャイル事業部データ分析基盤セクションの佐藤です。
先日社内勉強会「雲勉」で第1回LT大会の有志スタッフとして主催側で参加しました。
その際にイベント配信サイトとして利用した「Amazon IVS(Amazon Interactive Video Service) 最高!」となったため、共有の記事となります。
テスト配信や社内提案用の暫定配信先として数クリックで試せるので、YouTubeアカウントをお気軽に作れない方はぜひお試しください。
※注意※
・本記事はAmazon IVSの詳細設定などは割愛しています。詳細な構築についてはまた別の機会に。
・Amazon IVS自体は成功しましたがオンライン配信は諸々の設定考慮不足があり失敗しています。
・独断で行い撃沈した内容となるためコラムとしてご覧頂ければ幸いです。
構成の概要図
今回の配信では下図の構成でAmazon IVSを利用しました。
イベント企画時点でのLT大会開催の要件は下記になります。
- 社内としてはMeetで開催
- 社外へは後日に録画ファイルをアップロード
- (独断で)裏側で実は配信も出来てたんですよを実現出来ないか模索
オンライン配信やりたい欲から独断行動の開始
せっかくのハイブリッド開催LT大会です。
オンラインMTGツールにみんなで入ってワチャワチャやるのも良いですが、かっこいい画面で見たほうがテンション上がりますよね。多分。
(あわよくば今後は社内外関係なくLT大会で盛り上がっていきたいという個人的な思いもありひっそりと画策中)
今回のケースでは以下の状況からYouTubeアカウントの利用は出来ず、配信先に悩んでいました。
- 個人の独断によるこっそり配信
- 何があっても良いようにクローズドな環境で配信したい
- 配信当日はインターネット経由で外部環境からも見れるようにしたい
- テスト配信用のYouTubeアカウントの準備が当日までに間に合わなかった
- 12時間後には配信する環境が必要(白目)
配信当日に気づいてしまいました。配信先が準備できてないことに。
ありがとう。Amazon IVS。
「Amazon IVS最高」となった理由
今回の配信は準備が出来ていないから諦めようと思った矢先、Amazon IVSの存在を思い出しました。
Amazon Interactive Video Service (Amazon IVS) は、世界中の視聴者が低レイテンシーまたはリアルタイムの動画を利用できるようにするマネージド型ライブストリーミングソリューションです。これにより、魅力的なライブ体験を実現できます。
引用:Amazon Interactive Video Service
- OBSからIVSへの配信が可能
- 従量課金制(AWS利用料なので稟議不要でお試し利用できるのでありがたい)
- AWSコンソール上から数クリックでストリームキーなどの発行が出来る
- S3に配信データを保存出来る
配信先のWebサーバを別途用意する必要があったものの、WebサーバのサンプルコードもいくつかGithubに公開されていました。
Github:aws-samples / amazon-ivs-basic-web-sample Public
フロントエンドが苦手なわたしにはとてもありがたい待遇。
EC2にWebサーバを立ち上げて、「minimal-player-setup」の各種ファイル(html/css/js)を配置するだけで準備が整いました。
構築〜配信テストまで、おおよそ1時間程度触って出来ました。
あとはOBS側の画面作り込みや音量設定などが整えば、インターネット経由でユーザがアクセスして配信を見られる状況を作り出せます。
勝利を確信しました。
S3バックアップデータの保存
Amazon IVSでバックアップを設定した場合、指定したS3バケットへmdeiaファイルが保存されます。
サムネイルの記録などもあり、有効化した場合は併せて設定した間隔毎に保存されます。
mediaファイルは「160p30/」「360p30/」「480p30/」「720p30/」でサイズに応じて保存されます。
データはHLS形式(m3u8+tsファイル)として保存され、下図のように保存されていました。
今回はOBS側の録画機能を利用したためS3に保存したバックアップデータは利用していませんが、配信データのアーカイブとして機能するため今後はこちらの利用も検討したいと思います。
失敗の原因:配信者(自分自身)の経験不足
いざ、満を持してLT大会開催当日です。(設営準備中)
以下の構成(ざっくり)で準備を整え、配信を開始しました。
- 東京オフィス:オーディオインターフェースを介してマイクから直接録音
- 大阪オフィス:Meetの音を録音
- LT画面:Meetの画面を録画
実際にEC2のWebサーバで音声を聞いてくれていた方から連絡をもらいました。
「大阪の音声、配信で聞こえてないよ!」
なんだと…
OBS側の設定でMeet音声をミュートにしていた
東京オフィスでハウリングしないようにと、直前でOBSの構成をいじったことが原因でした。
Meetの音声は配信に乗せず、東京オフィスのスピーカーのみに流れる設定としていました。
Amazon IVS自体は問題なく稼働していただけに非常に悔やまれる結果です。
次回への布石
雲勉LT大会は始まったばかりです。
次回も裏でオンライン配信を出来るように改めて音声周りを見直したいと思います。
拠点が複数ある場合の配信の難しさを感じつつ、今後のコミュニティ活動の糧と出来ればと思います。
近頃のエンジニア界隈ではアウトプットとしてLTの場を設けるとすぐに埋まるという、アウトプットに飢えた方々が見受けられます。
今回そんなエンジニアの救いの場を作るべく既存の雲勉から派生し、LT大会の開催をプロジェクトとして企画頂きました。
オンライン&オフラインのハイブリッド開催は需要拡大しているため、エンジニア界隈のイベント開催の受け入れが出来るよう出来ることを考えていきたい次第です。