AWS Elemental MediaConvert でサーバーレス動画変換 - HLS 配信とサムネイル生成
ファイルベースの動画をブロードキャスト品質でトランスコードし、HLS・DASH・MP4 の複数フォーマットを一括生成する。ジョブテンプレートとキューの優先度制御で大量の動画処理パイプラインを構築する方法を解説します。
MediaConvert の概要
AWS Elemental MediaConvert はファイルベースの動画コンテンツをブロードキャスト品質でトランスコードするサービスです。入力ファイル (MP4、MOV、MXF など) を HLS、DASH、MP4、CMAF などの複数フォーマットに一括変換し、S3 に出力します。1 つのジョブで複数の出力 (解像度、ビットレート、コーデックの組み合わせ) を同時に生成でき、アダプティブビットレートストリーミング用のマニフェストファイルも自動生成します。MediaLive がライブストリーミングのリアルタイムエンコードに特化しているのに対し、MediaConvert は VOD (Video on Demand) コンテンツのファイルベーストランスコードに最適化されています。
ジョブ設定とコーデック
MediaConvert のジョブは入力設定、出力グループ、出力設定の 3 階層で構成されます。入力設定ではソースファイルの S3 パス、クリッピング (開始・終了時間)、デインターレース、ノイズリダクションを指定します。出力グループは HLS グループ、DASH グループ、ファイルグループなどの配信形式を定義し、各グループ内に複数の出力 (720p/1080p/4K) を設定します。コーデックは H.264 (AVC)、H.265 (HEVC)、AV1、VP9 をサポートし、H.265 は H.264 と同等の画質を約 50% 低いビットレートで実現します。AV1 はさらに高い圧縮効率を持ちますが、エンコード時間が長くなります。ジョブテンプレートで頻繁に使用する設定を保存し、API やコンソールから再利用できます。
パイプラインと自動化
S3 へのファイルアップロードを EventBridge で検知し、Lambda 関数から MediaConvert ジョブを自動起動する動画処理パイプラインを構築できます。ジョブの完了・エラーも EventBridge イベントとして通知されるため、後続処理 (メタデータの更新、CDN キャッシュの無効化、通知の送信) を自動化できます。キューの優先度制御で、緊急のジョブを優先的に処理し、バッチ処理は低優先度キューで実行するといった運用が可能です。リザーブドキュー (RTS) は固定料金で専用のトランスコードキャパシティを確保し、大量のジョブを安定したスループットで処理します。DRM (Digital Rights Management) 統合で、Widevine、FairPlay、PlayReady のコンテンツ保護を出力に適用できます。 動画配信技術についてはAmazon の関連書籍も参考になります。
MediaConvert の料金
MediaConvert の料金は出力の解像度とコーデックに基づく従量課金です。SD (480p 以下) は 1 分あたり約 0.0075 ドル、HD (720p/1080p) は約 0.015 ドル、4K UHD は約 0.030 ドルです (Basic Tier、H.264)。Professional Tier は高度な機能 (ドルビーオーディオ、HDR10+) を使用する場合に適用され、料金は約 2 倍になります。リザーブドキュー (RTS) は月額固定料金で、大量のトランスコードジョブを処理する場合にオンデマンドより低コストになります。
まとめ
AWS Elemental MediaConvert はファイルベースの動画をブロードキャスト品質でトランスコードし、HLS・DASH・MP4 の複数フォーマットを一括生成するサービスです。EventBridge と Lambda による自動化パイプライン、キューの優先度制御、DRM 統合で、VOD コンテンツの大規模な処理ワークフローを構築します。