ライブパッケージングは、ライブストリームをリクエストされた再生フォーマットにリアルタイムで変換する機能です。これにより、事前にすべてのフォーマットにコンテンツをパッケージ化する必要がなくなります。
ライブパッケージングを使用すると、以下のことが可能になります:
-
単一のインジェストから、HLS、HLS CMAF、または DASH フォーマットでライブコンテンツを配信する
-
タイムシフト視聴を有効にし、視聴者がライブコンテンツをリプレイできるようにする
-
ライブストリームを Object Storage Service (OSS) にアーカイブし、オンデマンドで再生する
仕組み
MediaPackage は、ライブパッケージングのリソースを 3 つのレベルで構成します:
-
チャンネルグループ -- チャンネルとエンドポイントの最上位コンテナです。各チャンネルグループには Origin Domain Name が割り当てられ、グループ内のすべての再生リクエストのベース URL として機能します。
-
チャンネル -- ライブストリームのエントリーポイントです。アップストリームエンコーダーは、チャンネルの入力 URL にコンテンツをプッシュします。各チャンネルは、冗長インジェストのために 2 つの入力 URL を提供します。一方の入力がコンテンツの送信を停止した場合、MediaPackage は自動的にもう一方に切り替え、継続的な配信を保証します。
-
エンドポイント -- チャンネルの出力設定です。各エンドポイントは、出力ストリームのストリーミングフォーマット、パッケージングパラメーター、およびアクセス制御を定義します。単一のチャンネルは複数のエンドポイントを持つことができ、それぞれが固有の再生 URL を生成します。
コンテンツは、これらのリソースを次のように流れます:
-
アップストリームエンコーダーが、ライブストリームをチャンネルの入力 URL にプッシュします。
-
ダウンストリームデバイス (プレーヤーまたは CDN) が、エンドポイントの再生 URL からコンテンツをリクエストします。
-
MediaPackage は、そのエンドポイントで定義されたフォーマットにストリームを動的にパッケージ化します。
-
MediaPackage は、パッケージ化されたストリームをリクエスト元のデバイスに配信します。
サポートされている入力と出力
サポートされている入力タイプ
| 入力タイプ | 説明 |
|---|---|
| HLS | MPEG-2 トランスポートストリーム (.ts) セグメントを使用した従来の HLS |
| HLS_CMAF | フラグメント化 MP4 (fMP4) セグメントを使用した Common Media Application Format (CMAF) を伴う HLS |
暗号化された HLS ストリームのインジェストはサポートされていません。
サポートされている出力タイプ
| 出力タイプ | 説明 | マニフェスト拡張 |
|---|---|---|
| HLS | MPEG-2 TS (.ts) セグメントを含む標準 HLS プレイリスト | .m3u8 |
| HLS_CMAF | CMAF fMP4 セグメントを参照する HLS プレイリスト | .m3u8 |
| DASH | MPEG-DASH マニフェスト | .mpd |
課金
-
ライブパッケージングでは、ストリームのインジェスト、パッケージング、および出力配信に対して料金が発生します。詳細については、「ライブパッケージングの課金」をご参照ください。
-
Live-to-VOD を介してライブコンテンツを OSS にアーカイブすると、OSS ストレージ料金が発生します。「OSS のストレージ料金」をご参照ください。
チャンネルグループの作成
-
Intelligent Media Services コンソールにログインします。
-
左上のコーナーで、リージョンを選択します。
-
左側のナビゲーションウィンドウで、[MediaPackage] > [Live Package] を選択します。
-
[チャネルグループの作成] をクリックします。
-
チャンネルグループの一意の名前と、オプションで説明を入力します。

-
[OK] をクリックします。
Live Package のチャンネルグループとチャンネルは、Channel Assembly 機能とは別です。
チャンネルの作成
チャンネルは、アップストリームエンコーダーからライブストリームを受信します。各チャンネルは冗長性のために 2 つの入力 URL を提供します。一方の入力がコンテンツの送信を停止した場合、MediaPackage は自動的にもう一方に切り替えます。
-
[ライブパッケージ] ページで、チャンネルグループ名をクリックします。
-
[チャネルの作成] をクリックします。
-
以下の設定を構成します:
パラメーター 説明 チャンネル名 チャンネルの一意の名前。 プロトコル 入力プロトコル。有効な値:HLS、HLS_CMAF。 セグメント期間 各セグメントの持続時間 (秒)。セグメントが長いとレイテンシーが増加し、短いとリクエストのオーバーヘッドが増加します。推奨値:6 秒。 セグメント 出力マニフェスト内のセグメント数。数値を大きくすると、プレーヤーのタイムラインが長くなり、トラフィックが増加します。推奨値:3。 
-
[OK] をクリックします。
エンドポイントの作成
エンドポイントは、チャンネルの出力フォーマットとアクセス制御を定義します。各エンドポイントは、一意の再生 URL を生成します。
-
チャンネル名をクリックして、チャンネル詳細ページを開きます。
-
[エンドポイント] タブをクリックし、[エンドポイントの作成] をクリックします。
-
基本情報を構成します:
パラメーター 説明 エンドポイント名 エンドポイントの一意の名前。 プロトコル 出力フォーマット。有効な値:HLS、HLS_CMAF、DASH。 マニフェスト名 マニフェストファイル名。デフォルト: manifest。例えば、HLS プロトコルでこれをindexに設定すると、再生 URL の末尾はindex.m3u8になります。認証コード プレーヤーまたは CDN がこのエンドポイントからコンテンツをリクエストする際に、 AuthorizationHTTP ヘッダーに含める必要がある認証コードです。IP アドレスホワイトリスト このエンドポイントへのアクセスを許可する IPv4/IPv6 アドレスまたは CIDR ブロック。 IP アドレスブラックリスト このエンドポイントへのアクセスを拒否する IPv4/IPv6 アドレスまたは CIDR ブロック。 タイムシフト日数 タイムシフト視聴のためにライブコンテンツを保持する日数。タイムシフトを無効にするには 0 に設定します。この設定は、Live-to-VOD 収集タスクを作成するための前提条件です。タイムシフト再生の詳細については、「タイムシフト視聴」をご参照ください。 
-
選択したプロトコルに応じて、[セグメント設定項目] を設定します:
HLS

パラメーター
説明
セグメント期間
各出力セグメントの持続時間 (秒)。有効な値:1~30。
オーディオ分離
有効にすると、オーディオトラックはビデオとは別のセグメントにパッケージ化されます。
HLS_CMAF & DASH

パラメーター
説明
セグメント期間
各出力セグメントの持続時間 (秒)。有効な値:1~30。
DRM 暗号化
DRM 暗号化を有効にします。HLS_CMAF および DASH プロトコルでのみ利用可能です。
暗号化方式
暗号化方式。デフォルト:
SAMPLE_AES。固定初期化ベクトル
16 バイトの 16 進数値 (32 文字の文字列)。空白のままにすると、MediaPackage が自動的に生成します。
DRM システム ID
使用する DRM システム。HLS_CMAF では最大 3 つ、DASH では最大 2 つ選択します。
サポートされているシステム:
-
HLS_CMAF: Apple FairPlay、Google Widevine、Microsoft PlayReady。
-
DASH: Google Widevine、Microsoft PlayReady。
DRM プロバイダー URL
キーサーバー通信用のプロキシの URL。最大長:512 文字。
コンテンツ ID
エンドポイントの一意の識別子。空白のままにすると、MediaPackage が自動的に生成します。
-
-
マニフェスト設定を構成します:
HLS & HLS_CMAF

パラメーター
説明
セグメント
出力 M3U8 プレイリスト内のセグメント数。有効な値:2~100。
プログラム日時インターバル
EXT-X-PROGRAM-DATE-TIMEタグを挿入する間隔 (秒)。デフォルトでは、タグは挿入されません。ストリーム順序
マニフェスト内のストリームの順序。有効な値:
-
オリジナル:ソースが使用するのと同じ順序で出力ストリームをソートします。
-
ビットレート昇順:最も低いビットレートから出力ストリームをソートします。
-
ビットレート降順:最も高いビットレートから出力ストリームをソートします。
最小ビデオビットレート
この値より低いビットレートのストリームを出力マニフェストから除外します。
最大ビデオビットレート
この値より高いビットレートのストリームを出力マニフェストから除外します。
DASH

パラメーター
説明
最小バッファ時間
プレーヤーが維持しなければならない最小バッファ時間 (秒)。デフォルト:セグメント期間の 2 倍。有効な値:1~30。
最小更新期間
プレーヤーがマニフェストの更新をリクエストするまでの最小間隔 (秒)。デフォルト:セグメント期間の 2 倍。有効な値:1~3600。
推奨プレゼンテーション遅延
ライブエッジと再生開始位置との間の遅延 (秒)。例えば、35 秒の遅延は、午後 5:30 のリクエストが午後 5:29:25 のコンテンツを受信することを意味します。
マニフェストウィンドウ
ライブストリーミング中にリプレイ可能なコンテンツの持続時間 (秒)。有効な値:1~3600。
ストリーム順序
マニフェスト内のストリームの順序。有効な値:
-
オリジナル:ソースが使用するのと同じ順序で出力ストリームをソートします。
-
ビットレート昇順:最も低いビットレートから出力ストリームをソートします。
-
ビットレート降順:最も高いビットレートから出力ストリームをソートします。
最小ビデオビットレート
この値より低いビットレートのストリームを出力マニフェストから除外します。
最大ビデオビットレート
この値より高いビットレートのストリームを出力マニフェストから除外します。
-
-
[OK] をクリックします。
エンドポイントが作成されると、[エンドポイント] タブの [URL] 列に再生 URL が表示されます。
ストリームインジェスト
チャンネルを作成すると、冗長インジェストのために 2 つの入力 URL が生成されます。
入力 URL の表示
-
チャンネル詳細ページに移動します。
-
[入力] タブをクリックします。URL の例:
入力 説明 ingest1 プライマリ入力 URL。 ingest2 バックアップ入力 URL。プライマリ入力が利用できなくなった場合、MediaPackage は自動的にこの URL にフェイルオーバーします。 http://xxxxxx-1.packagepush-9eji12.ap-southeast-1.ice.aliyundoc.com/v1/dfjtest/1/test01/manifest -
[アクション] 列の [認証] をクリックすると、ベーシック認証のアカウント名とパスワードを表示できます。
エンコーダーの設定
-
エンコーダーの 出力 先をプライマリ入力 URL に設定します。冗長構成の場合は、セカンダリ出力をバックアップ入力 URL に設定します。
-
提供された認証情報で Basic 認証を有効にします。エンコーダーは、すべてのリクエストに以下の HTTP ヘッダーを含める必要があります:
Authorization: Basic <BASE64_ENCODE(username:password)> -
HTTP PUT を使用して M3U8 プレイリストと TS セグメントをアップロードします。各ファイル URL は、入力 URL と同じベースパスを共有する必要があります:
PUT https://<input-url>/manifest.m3u8 PUT https://<input-url>/manifest-hd-1001.ts
要件:
-
有効なマスタープレイリスト、メディアプレイリスト、および TS セグメントをアップロードしてください。
-
暗号化された HLS ストリームはサポートされていません。
-
冗長インジェストの場合、プライマリストリームとバックアップストリームは、タイムスタンプが揃った同一のコンテンツを伝送する必要があります。ストリームがずれていると、フェイルオーバー時に再生が失敗する可能性があります。
また、MediaLive を使用してストリームをインジェストすることもできます。
ストリーム再生
エンドポイントからの再生 URL を使用して、パッケージ化されたストリームを再生します。
デバッグ用:
-
エンドポイントの IP アドレスホワイトリストにご利用の IP アドレスを追加するか、
-
エンドポイントの認証コードを
Authorizationヘッダーに含めます。
本番環境用:
CDN がオリジンリクエストに Authorization ヘッダーを含めるように設定します。Alibaba Cloud CDN を使用する場合は、「発信リクエストヘッダーの設定」をご参照ください。
タイムシフト視聴
エンドポイントでタイムシフトが有効になっている場合、MediaPackage は指定された日数だけライブコンテンツを保持します。プレーヤーは、再生 URL に時間パラメーターを追加することで、過去のコンテンツをリプレイできます。
例:
https://xxxxx-1.packagepush-9eji12.ap-southeast-1.ice.aliyundoc.com/v1/group01/ch01/endpoint01/index.m3u8?start=2024-11-06T00:00:00Z&vodend=2024-11-06T02:00:00Z
この例では、2024-11-06T00:00:00Z から 2024-11-06T02:00:00Z までのライブコンテンツをリプレイします。タイムシフトリクエストは、エンドポイントの通常の M3U8 マニフェスト URL に 2 つのクエリパラメーターを追加したものです:start はタイムシフトの開始時刻を設定し、vodend はタイムシフトの終了時刻を設定します。
時間パラメーター
| パラメーター | 説明 |
|---|---|
start |
開始時刻 (協定世界時 (UTC))。例:2024-11-06T00:00:00Z。 |
end |
ライブモードの終了時刻 (協定世界時 (UTC))。例:2024-11-06T00:00:00Z。タイムシフト再生は、指定された終了時刻に達するまでライブモードを維持します。 |
vodend |
VOD モードの終了時刻 (協定世界時 (UTC))。すべてのセグメントが一度に ENDLIST タグ付きで返され、プレーヤーに完全なシーク機能を持つ完全なタイムラインを提供します。 |
offset |
ライブエッジから指定されたオフセットだけ巻き戻します。単位:Sec。例:?offset=300 は、ライブから 5 分遅れて再生を開始します。 |
注意事項
-
startまたはoffsetのいずれかを指定し、両方を指定しないでください。 -
endとvodendの両方が指定された場合、vodendが優先されます。
Live-to-VOD
MediaPackage は、収集タスクを使用して、ライブストリームのセグメントを OSS にアーカイブし、オンデマンドで再生できます。
前提条件
開始する前に、以下を確認してください:
収集タスクの作成
-
チャンネル詳細ページで、[収集タスク] タブをクリックします。
-
[収集タスクの作成] をクリックします。
-
以下の設定を構成します:
パラメーター 説明 エンドポイント タイムシフトが有効になっているエンドポイントを選択します (タイムシフト日数 > 0)。 収集時間 収集するコンテンツの時間範囲。 ストレージパス 収集したファイルが保存される OSS バケット。 
-
[OK] をクリックします。
タスクは自動的に開始されます。OSS コンソールで収集されたファイルを表示します。
同じエンドポイントに対して複数の収集タスクを実行すると、別々の出力ファイルが生成されます。
よくある質問
MediaPackage にライブストリームをインジェストするにはどうすればよいですか?
HLS 出力をサポートするエンコーダーを使用し、Basic 認証情報を使用してチャンネルの入力 URL にプッシュします。MediaLive の使用を推奨します。
パッケージ化されたストリームを再生するにはどうすればよいですか?
エンドポイント用に生成された再生 URL を使用します。
デバッグのためには、ご利用の IP アドレスをエンドポイントの [IP アドレスホワイトリスト] に追加するか、プレーヤーの Authorization リクエストヘッダーにエンドポイントで設定された認証コードを設定します。
外部の視聴者がストリームを再生できるようにするには、CDN でオリジンアクセラレーションを設定します。CDN は、エンドポイントの認証コードを運ぶ Authorization リクエストヘッダーを送信する必要があります。設定手順については、ご利用の CDN プロバイダーにお問い合わせください。
収集タスクは完了しましたが、出力ファイルがありません。何が問題だったのでしょうか?
エンドポイントでタイムシフトが有効になっている必要があります。エンドポイントの設定を開き、タイムシフト日数 を 0 より大きい値に設定してください。
ライブパッケージから収集タスクを作成する場合と、Live-to-VOD モジュールから作成する場合の違いは何ですか?
どちらも同じ結果になります。ライブパッケージはチャンネルごとに収集タスクを管理し、Live-to-VOD はすべてのチャンネルにわたるすべてのタスクの集中管理ビューを提供します。