[アップデート] AWS Elemental MediaConvertで高速トランスコーディングが利用可能になりました [最大25倍スピードアップ!]

ファイルベースの動画変換サービスであるAWS Elemental MediaConvertで高速トランスコーディングが利用可能になりました。4K(UHD)やハイダイナミックレンジ(HDR)のコンテンツなどで効果を発揮し、変換処理が最大で25倍速くなるとのことです。
2019.04.29

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

清水です。AWS Media Servicesの細かなアップデートを追っていくコーナーです。本エントリで紹介するのはこちら、ファイルベースの動画変換サービスであるAWS Elemental MediaConvertで高速トランスコーディングが利用可能になりました。トランスコーディング(変換)速度が最大で25倍速くなるとのことです!(2019/04/08にアップデートされた内容になります。)

4K(UHD)やハイダイナミックレンジ(HDR)のコンテンツなどでは計算量が膨大になり、変換処理(トランスコーディング)にかかる時間も長くなってしまいます。今回追加された高速トランスコーディング機能を使うことで、自動的に変換ジョブの特性を分析し最適化、効率的にジョブを実行します。画像処理の品質はそのままに、最大で処理速度を25倍向上させることができるそうです。また料金についてもプロフェッショナル層の機能となりますが、通常のプロフェッショナル価格体系がそのまま適用され、追加料金などなしに利用できます。

なお、高速トランスコーディング(Accelerated Transcoding)機能を使用して効果が得られやすいコンテンツ、また高速トランスコーディングを使用した場合の制限事項(例えば一部サポートされない機能があるなど)については下記ユーザガイドに詳細がまとめられています。(2019/04/29 現在、英語版のみとなっていました。)

例えば恩恵を受けやすいコンテンツとしては以下3点が挙げられています。いずれも計算量が大きく変換に時間がかかりそうな条件ですね。

  • Ultra High Definition(UHD)コンテンツ (=4kコンテンツ)
  • HEVC(H.265)で高ダイナミックレンジ(HDR)を利用したコンテンツ
  • 時間が長く、また視覚的に複雑なコンテンツ

また高速トランスコーディング機能を使用した場合にサポートできない機能の一つとして、Embedded timecode sourceがあり、上記ユーザーガイドのページにもジョブ作成時にTimecode sourceの設定でStart at 0を選択するよう、記載されています。

AWS Elemental MediaConvertで高速トランスコーディングをやってみる

では実際にMediaConvertで高速トランスコーディングを用いたジョブを作成してみます。入力ファイルは以下のページでダウンロードできるBig Buck BunnyのStandard 2D、4K, Quad-Full-HD (3840x2160)、60fpsのものを使用しました。

MediaInfoで得られる情報は下記の通りです。

今回はこのBig Buck Bunnyの4K動画を4KのままHEVC(H.265)形式に変換してみます。変換用のOutput presetsはSystem-Hevc_2160p_29_97fps_10mbpsをもとに、Custom-Hevc_2160p_29_97fps_VBR_5mbpsを作成しました。もとのSystem PresetからRate control modeVBRに、ビットレートを5Mbpsに変更しています。

こちらがベースにしたSystem-Hevc_2160p_29_97fps_10mbpsです。

こちらはRate control modeとビットレートを変更したCustom-Hevc_2160p_29_97fps_VBR_5mbpsです。

また、Accelerated Transcoding用のQueueも新たに作成しておきます。

ジョブの作成では、まず、InputのVideo selector、Timecode sourceの設定でStart at 0を選択します。

続いてOutputでは先ほど作成したCustom Preset Custom-Hevc_2160p_29_97fps_VBR_5mbpsを選択します。

Job settingsの項目では、Queueに先ほど作成したAcceleratedTranscodingQueue、またAccelerationの項目をEnableに設定します。さらに、Timecode configurationのSourceの項目ではStart at 0を設定します。

以上を設定して、ジョブを作成します。ジョブの実行結果がこちらです!変換にかかった時間を表すDuration in transcoding00:14:56でした。

高速トランスコーディングを使用しない場合との比較

比較として、高速トランスコーディングを使用しない場合も試してみます。入力ファイルやOutput preestは同一とし、Queueはデフォルトのもの(ただし他のジョブは実行されていない)、Accelerationの項目をDisalbeとしてます。

ジョブの実行結果として、Duration in transcoding01:50:31=6631秒でした。高速トランスコーディングを利用した場合は00:14:56=896秒でしたので、高速トランスコーディングを利用することで7.5倍ほど高速になったといえますね!

まとめ

AWS Elemental MediaConvertの新機能、高速トランスコーディングをやってみました。高速トランスコーディングを使用しない場合と比べると(1回のみの比較ですが)約7.5倍ほどの速度の差がみられました。最大値と言われる25倍速とまではいきませんでしたが、そもそも変換処理に時間がかかるUHD、HEVC(H.265)の変換ではこの速度向上は嬉しいですね!そしてこれが追加料金なしで利用できることもポイントです。変換機能面での一部制限事項などもありますが、計算量が大きく時間がかかりそうな変換処理を行う際には高速トランスコーディングオプションを検討してみてはいかがでしょうか。引き続きAWS Elemental MediaConvert含めたAWS Media Servicesの機能アップデートに注目していきたいと思います。