AWS Elemental MediaPackage
MediaPackage v2はライブ入力をHLS・DASHへ動的に包装する配信元。新規ライブはv2を使い、分離されたv1資源は自動移行されないため並行検証して切り替える。
- v2はHLS・CMAF入力をHLS・DASHへ動的に包装する。
- 二つの取り込み口、時間差再生、SPEKE暗号化を配信端点で制御する。
- v1とv2は別APIで自動移行がなく、新旧を並行検証して切り替える。
解決する課題
AWS Elemental MediaPackage v2 は、MediaLiveなどから届くエンコード済みライブを保持し、端末に合わせたHLS・DASHへ要求時に包装する配信元です。CloudFrontを前段に置くことで、入力、包装、配信の責任を分離できます。
- 一つのライブ入力から、異なる端末向けの配信形式を動的に返す
- 二つの取り込み口を使い、片系のセグメント欠落時に入力を切り替える
- 時間差再生、SCTE-35、SPEKE v2によるDRMを配信端点ごとに制御する
- v1からv2へ、URL・API・設定を作り直して段階的に切り替える
v2は2023年5月に公開され、新規ライブ構成で推奨されています。v1からの自動移行はなく、v2のCLI・APIからv1資源は見えません。2026年7月29日時点で公式なv1提供終了日は確認できないため、「終了済み」とは扱わず、旧世代として移行を計画します。
主要概念と用語
- チャンネルグループ: v2の最上位単位。チャンネルをまとめ、配信元のドメインを共有する
- チャンネル: ライブ入力を受ける単位。作成時にHLSまたはCMAFの入力種別を固定する
- 二重取り込み口: 各チャンネルに払い出される二つのURL。同じ内容を同時送出すると片系断に備えられる
- 配信端点: HLSまたはDASHの包装、時間差再生、SCTE-35、暗号化を定義する出力口
- 時間差再生: 保存窓内の過去時刻を始点にしたマニフェストを返す機能
- ライブからVODへの収穫: 指定区間を同一リージョンのS3へ書き出す処理
- SPEKE v2: DRM鍵プロバイダーとMediaPackageを結ぶ暗号鍵交換仕様
- v1のVOD資源: パッケージグループやアセットはv1側の概念。MediaPackage v2はライブ用で、録画済みVODの新規変換はMediaConvertとS3などを検討する
仕様・制限・クォータ
- 入力はHTTPSで送るHLSまたはCMAF。入力種別はチャンネル作成後に変更できない
- HLS入力はTS、CMAF入力はCMAFセグメントを使う。新しいMediaLive連携ではCMAF入力を優先する
- 出力はHLS(TSまたはCMAF)とDASH(CMAF)。AV1はCMAF端点だけで利用できる
- 既定上限は、チャンネルグループ3件/アカウント、チャンネル10件/グループ、配信端点10件/チャンネル、マニフェスト25件/配信端点
- 時間差コンテンツの最大保持は336時間、1本の時間差マニフェストは最大24時間
- ライブからVODへの収穫は1回最大24時間で、v2配信端点から同一リージョンのS3へ出力する
- 入力要求は200件/秒/チャンネル、配信端点はセグメント500件/秒・マニフェスト10,000件/秒が既定上限。変更可否はService Quotasで確認する
内部の仕組み
横にスクロール
- MediaLiveまたは外部エンコーダが、チャンネルの二つの取り込み口へ同一内容を送る
- MediaPackage v2が到着セグメントを保持し、片方が欠落すると利用可能な入力へ切り替える
- CloudFrontまたはプレーヤーが配信端点へマニフェストを要求する
- 配信端点がHLS・DASH、時間窓、SCTE-35、暗号化設定を反映して応答する
- CloudFrontが応答をキャッシュし、視聴者へ配る
切替時に入力のセグメント長が一致しないと、URLや時系列が変わる場合があります。短いセグメントは切替時の待ちを減らせる一方、要求数と処理負荷を増やします。
設計パターン / ベストプラクティス
- MediaLiveからv2へはCMAF取り込みを優先し、二つの取り込み口へ同一設定で送出する
- CloudFrontを前段に置き、視聴者をMediaPackageへ直接集中させない
- 時間差の保持は必要範囲だけにし、24時間を超える長期保存はS3への収穫・録画で分離する
- DRMはSPEKE v2対応の鍵プロバイダー、再生端末、鍵ローテーションまで通しで検証する
- v1→v2は、チャンネルグループ・チャンネル・配信端点・IAM・ログ・CloudFrontオリジンを新規作成し、二重送出してから切り替える
- マニフェスト、字幕、SCTE-35、DRM、時間差URL、プレーヤー互換性を新旧で比較する
運用・監視
- 取り込み要求、入力切替、入力・出力バイト、配信端点の4xx・5xxをCloudWatchで監視する
- MediaLiveの出力状態、MediaPackageの入力状態、CloudFrontの障害率を同じ時系列で関連付ける
- アクセスログを有効化し、マニフェストとセグメントの失敗を分けて調べる
- 両入力が止まると新しいセグメントは進まない。入力元、MediaPackage、CloudFrontの順に切り分ける
- v1移行後は、旧URLへの要求がなくなったことを確認してから旧資源を停止する
コスト
主な課金軸は取り込み量と配信元からの出力量です。CloudFront、MediaLive、S3収穫、DRM鍵サービスの費用は別にかかります。形式数そのものより、実際に要求される出力量と視聴量を基に見積もり、新旧並行期間の二重費用も含めます。
セキュリティ
- v2の取り込みはSigV4で認証し、チャンネルポリシーを最小権限にする
- 別アカウントのエンコーダだけを許す場合は、対象プリンシパルと資源をポリシーで限定する
- 配信はCloudFront経由に寄せ、署名付きURL/CookieやWAFで視聴範囲を制御する
- DRM鍵はSPEKE v2で受け、鍵サービスの認証・可用性・監査も監視する
- 入力セグメントは暗号化済みで送れないため、転送経路のTLSと取り込み権限を確実に保護する
関連サービス・比較
| 観点 | MediaPackage v2 | MediaPackage v1 |
|---|---|---|
| 推奨用途 | 新規ライブ構成 | 既存の旧世代構成 |
| 資源階層 | チャンネルグループ→チャンネル→配信端点 | チャンネル→配信端点、VODは別資源 |
| 入力 | HLSまたはCMAF、二重取り込み | HLS取り込み |
| API | mediapackagev2 | mediapackage / mediapackage-vod |
| 移行 | v1資源を自動読込しない | v2へ自動変換されない |
ハンズオン / CLI例
# v2のチャンネルグループを確認
aws mediapackagev2 list-channel-groups \
--query "Items[].{Name:ChannelGroupName,Arn:Arn}"
# 入力種別を含めてチャンネルを確認
aws mediapackagev2 list-channels \
--channel-group-name my-channel-group \
--query "Items[].{Name:ChannelName,Input:InputType,Arn:Arn}"
# 配信端点を確認
aws mediapackagev2 list-origin-endpoints \
--channel-group-name my-channel-group \
--channel-name my-live-channel \
--query "Items[].{Name:OriginEndpointName,Type:ContainerType}"
AWS Service
AWS Elemental MediaPackageを実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
メディア
比較で見る軸
クラウド: AWS / カテゴリ: メディア / 難易度: intermediate
導入後に効く点
二つの取り込み口、時間差再生、SPEKE暗号化を配信端点で制御する。
先に潰すリスク
サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。
- クラウド
- AWS
- カテゴリ
- メディア
- 難易度
- intermediate
- 関連資格
- DVA-C02
- 設計柱
- reliability / security / performance
判断チェックリスト
- 自社の用途が「メディア / reliability」に近いか確認する。
- 強みである「v2はHLS・CMAF入力をHLS・DASHへ動的に包装する。」が本当に評価軸になるか確認する。
- 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。