[新機能] Amazon Elastic TranscoderがMPEG-DASHに対応しました
はじめに
清水です。Amazon Elasitc TransocoderがMPEG-DASHに対応したことが、今朝のAWS公式ブログで発表されれていました。
- Amazon Elastic Transcoder Update – Support for MPEG-DASH
- Amazon Elastic Transcoder Now Supports MPEG-DASH
MPEG-DASHはこれまでHLS、HDS、Smooth Stremingなど様々だったHTTPストリーミング配信フォーマットの統合を目指して制定された規格です。 少し前までは、動画変換側、再生端末側もそれぞれサポートされているものが少ない状況でしたが、 最近ではいろいろなところで目にするようになってきました。今後もますます広がっていくものと思います。 今回のAmazon Elastic Transcoderのアップデートでは、そんなMPEG-DASHへの動画変換がサポートされました。
プリセットを確認してみる
まずは、Elastic Transcoderで事前に設定されているSystem presetを確認して見ます。 ビットレートの違いで5種類のMPEG-Dash用プリセットが追加されていることがわかります。
また、プリセットの詳細を確認してみます。 下は1.2Mbpsのプリセットの例ですが、ビデオコーデックとしてはH.264を使用していることがわかります。
やってみた
それでは、このSystem presetを使用して実際にMPEG-DASHにトランスコードしてみたいと思います。
掲載当初、ジョブ作成時に「MPEG-Dash Video」 Preset のみを指定しており、これだと音声がトランスコードされませんでした。 「MPEG-Dash Audio」 Presetも追加する手順に変更して、映像・音声ともにトランスコードされるよう、手順を更新しました。(2016/05/28)
トランスコード処理
まずは、新たにパイプラインを作成します。 既存のパイプラインも使用できますが、今回はMPEG-DASH配信をS3から直接行いたかったので、 新たに作成、出力用バケットの設定の際に、Elasitc Transcoderで出力されるファイルがWeb公開状態となるように(All User にOpen/Download権限があるように)設定しました。
そしてジョブを作成します。 1つ目の出力設定「Output Details (1 of 1)」のPreset欄でビデオ側の出力設定、「System preset: MPEG-Dash Video 1.2M」を選択します。 Segment Durationは今回は6(秒)としました。 Output KeyはInput Keyのファイル名に_video_1200を付けておきました。
続いて、[+Add Another Output]をクリックして、出力設定を追加します。 こちらでは、Preset欄で「System preset: MPEG-Dash Audio - 128k」を選択します、オーディオ側の出力設定になります。Segment DurationはVideoと同じ6(秒)、Output Keyも同じように_audio_128を付けたものとしました。
そして[Add Playlist]をボタンを押してPlaylistを作成します。 Playlist名はInput Kyeのファイル名としました。 Playlist FormatはMPEG-DASHを選択し、Outputsにビデオの出力と、オーディオの出力の計2つを設定します。これでジョブを作成します。
ジョブを作成してしばらく待つと、出力用S3バケットに変換後のファイル2つとPlaylistファイルが作成されていました!
配信用のS3設定
今回は取り急ぎ、CloudFrontを経由せず、S3から直接配信してみたいと思います。 S3バケットに以下のCORS設定を行ないます。
<?xml version="1.0" encoding="UTF-8"?> <CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <MaxAgeSeconds>3000</MaxAgeSeconds> <AllowedHeader>*</AllowedHeader> </CORSRule> </CORSConfiguration>
MPEG-DASHを再生してみる
変換したMPEG-DASHを、S3から配信してみたいと思います。 Playerは、MPEG-DASHのReference Client最新版を使用します。
Enter your manifest URL hereのところに、S3に格納されているPlaylistファイルのURLを入力します。 今回は以下のアドレスとなりました。
- https://s3-ap-northeast-1.amazonaws.com/[S3バケット名]/MPEG-DASH/Sample4_Playlist.mpd
そしてLoadを押すと、再生が始まりました!
まとめ
Amazon Elastic Transcoderが次世代動画ストリーミング規格であるMPEG-DASHに対応したので、駆け足で試してみました!
Elastic Transcoderは一月ほど前に次世代動画コーデックであるVP9にも対応しています([新機能] Amazon Elastic TranscoderがVP9コーデックに対応しました)。
今後もますますAmazon Elasti Transocderから目が離せなくなりました!