Tag: LiveShell

MediaLiveでライブ配信システムを構築する

ライブ配信システムの構成

映像データは下記のように流れる。

カメラ、マイク -> ローランドの映像ミキサー -> LiveShell X -> MediaLive -> MediaStore -> CloudFront -> 各プラットフォームのプレーヤー

この手順では、MediaLive、MediaStore、CloudFrontの設定について行う。

このうち、MediaLiveには

  1. インプット( LiveShell X からの RTMP を受け取る )
  2. チャンネル( 映像データをエンコードする ) で構成されている。

またMediaStoreはストレージで、MediaLiveでエンコードされたデータを保存する領域になっている( MediaLive だけでは映像を保存できない、かならず別の保存する領域に転送する必要がある )

CloudFrontは大規模配信で使われるCDNで、 複数ユーザにキャッシュを見せる事で、MediaStoreの負荷を下げるために用いている。つまりCloudFront無しでも配信は可能だが、CloudFront無しだとライブ授業のユーザー数には耐えられないため、導入しておいた方がよい。

MediaStore( 映像チャンク置き場 )を作る

MediaStoreは「MediaLiveでエンコードされた映像のチャンクを置く場所」として必要( MediaLiveにはストレージが無いので、別途つくる必要がある ) MediaLiveを作る際にMediaStoreのアドレスを指定する必要があるので、事前に作成する。

チャンネルを作成する

MediaLiveで映像データをエンコードするチャンネルを作成する

管理画面 からログイン

設定例

入力名: dev 入力タイプ: RTMP (プッシュ) Network mode: Public 入力セキュリティグループ: 既存の使用、0.0.0.0/0 入力の送信先: SINGLE_PIPELINE

  1. [チャンネルの作成] をクリック

  2. ( その環境にMediaLive用のロールが無ければ作る必要があるので )テンプレートからロールを作成する

チャンネルテンプレートは[ Live Action ]をベースに作成する事にした。 ( このテンプレートの内容は時代によって変わるようだ。以前よりテンプレートも増えているし内容も異なる )

[ Channel class ] は [ SINGLE PIPELINE ]を選択する。 標準では[ STANDARD ]になっているが、正しく冗長化を試みるとなると、インターネット回線を2つ用意するような話になるので、シンプルに[ SINGLE PIPELINE ]で設定する。

Read more...