アダプティブビットレートストリーミングは、指定されたオーディオストリームとビデオストリームを単一のファイルにパッケージングします。これにより、プレーヤーは現在のネットワーク帯域幅に最適なストリームを自動的に選択できます。このトピックでは、ビデオをアダプティブビットレートストリームにトランスコードする方法について説明します。
アダプティブビットレートストリーミングとは
アダプティブビットレートストリーミングは、複数のオーディオストリームとビデオストリームを単一のファイルにパッケージングします。このファイルには、各ストリームのビットレートや解像度などの情報が含まれています。従来のシングルビットレート再生とは異なり、アダプティブビットレートストリーミングでは、プレーヤーは現在のネットワーク帯域幅とデバイスに最適なストリームを選択できます。これにより、再生エクスペリエンスが向上します。
アダプティブビットレートストリーミングの最も一般的な出力フォーマットは HLS と DASH です。現在、ApsaraVideo VOD はアダプティブビットレートストリーミングで HLS のみをサポートしています。
デモンストレーション

使用方法
コンソールを使用したトランスコーディング
ステップ 1: アダプティブビットレートトランスコーディングテンプレートグループの作成
まず、トランスコーディングジョブを開始するときに使用するアダプティブビットレートトランスコーディングテンプレートグループを作成します。
詳細については、「トランスコーディングテンプレート」をご参照ください。
ステップ 2 (任意): ワークフローの作成とトランスコーディングテンプレートグループの関連付け
トランスコーディング、レビュー、スナップショットキャプチャなどのメディア処理タスクをワークフローで編成します。メディアファイルをアップロードするか、メディア処理をトリガーすると、ワークフローは事前に定義されたタスクの順序に従ってファイルを自動的に処理します。
ワークフローを作成し、メディアトランスコーディングノードを追加して、前のステップで作成したアダプティブビットレートトランスコーディングテンプレートグループを関連付けます。詳細については、「ワークフローの管理」をご参照ください。
ステップ 3: トランスコーディングの開始
作成したアダプティブビットレートトランスコーディングテンプレートグループまたはワークフローを使用して、ビデオをトランスコードします。メディアのアップロード中またはアップロード後にトランスコーディングをトリガーできます。
アップロード中の自動トランスコーディングトリガー
ApsaraVideo VOD コンソールにログインします。
左側のナビゲーションウィンドウで、メディアファイル > [オーディオ/ビデオ]を選択し、[オーディオ/ビデオのアップロード]をクリックします。
[オーディオ/ビデオの追加] をクリックします。アップロード方法やストレージの場所などのパラメーターを設定します。トランスコードテンプレートグループでの処理 または ワークフローでの処理 を選択し、次に、作成したアダプティブビットレートトランスコーディングテンプレートグループまたはワークフローを指定します。
サポートされているアップロードフォーマットとパラメーターの説明については、「コンソールでのメディア資産のアップロード」をご参照ください。

アップロードするオーディオまたはビデオファイルを追加し、アップロード をクリックします。
アップロード後のトランスコーディング開始
この操作は、既存のビデオの再トランスコーディング、標準暗号化の適用、またはウォーターマークパラメーターの上書きによく使用されます。
ApsaraVideo VOD コンソールにログインします。
左側のナビゲーションウィンドウで、メディアファイル > [オーディオ/ビデオ] を選択します。
[オーディオ/ビデオ] ページで、トランスコードするオーディオまたはビデオファイルを見つけ、[操作] 列の 処理 をクリックします。
トランスコードテンプレートグループでの処理 または ワークフローでの処理 を選択します。次に、作成したアダプティブビットレートトランスコーディングテンプレートグループまたはワークフローを指定します。

OK をクリックします。
ステップ 4: トランスコーディング結果の表示
トランスコーディングジョブを開始した後、2 つの方法のいずれかでそのステータスと出力ビデオの URL を表示できます。その後、ビデオ URL を取得し、ApsaraVideo Player またはサードパーティのプレーヤーを使用して再生できます。
ApsaraVideo VOD で高速化ドメイン名を設定していない場合、ビデオをその URL から再生またはダウンロードすると、ストレージのアウトバウンドトラフィック料金が発生します。詳細については、「ストレージからのアウトバウンドトラフィックの課金」をご参照ください。
方法 1: コンソールでの表示
ApsaraVideo VOD コンソールにログインします。
左側のナビゲーションウィンドウで、メディアファイル > [オーディオ/ビデオ] を選択します。
[オーディオ/ビデオ] ページで、オーディオまたはビデオファイルのステータスを表示します。
ステータスが 正常 の場合は、トランスコーディングが完了したことを示します。その他のステータスの説明については、「ステータス: ビデオステータス」をご参照ください。
トランスコードされたオーディオまたはビデオファイルの [操作] 列で、管理 をクリックして ビデオ URL タブに移動します。
正常にトランスコードされたオーディオまたはビデオファイルの場合、システムは 1 つのアダプティブストリームと複数のトランスコード済みストリームを、対応するビデオ URL とともに生成します。

方法 2: イベント通知の使用
ApsaraVideo VOD は、HTTP および MNS コールバックによるイベント通知をサポートしています。イベント通知を設定すると、ApsaraVideo VOD は、メディアファイルがアップロードまたはトランスコードされたときなど、処理されたときに通知を送信します。コールバック結果からトランスコーディングジョブのステータスと出力ビデオの URL を取得できます。詳細については、「イベント通知」をご参照ください。
次のイベントはトランスコーディングに関連しています:
OpenAPI を使用したトランスコーディング
注意事項
API 操作を呼び出す方法については、「ApsaraVideo VOD API の概要」をご参照ください。Alibaba Cloud のオンラインコマンドラインツール OpenAPI Explorer を使用して API 操作をテストすることを推奨します。OpenAPI Explorer では、署名を計算する必要なく ApsaraVideo VOD API 操作を実行できます。操作が成功すると、OpenAPI Explorer はさまざまな SDK のサンプルコードを動的に生成します。
ステップ 1: アダプティブビットレートトランスコーディングテンプレートグループの作成
まず、トランスコーディングジョブを開始するときに使用するアダプティブビットレートトランスコーディングテンプレートグループを作成します。
AddTranscodeTemplateGroup 操作を呼び出し、
TranscodeTemplateパラメーターを使用してパッケージングテンプレートを設定します。このセクションでは、パッケージングテンプレートに固有の設定パラメーターのみを説明します。詳細については、「TranscodeTemplate:トランスコーディングテンプレートの設定」をご参照ください。
ステップ 2: (任意) ワークフローの作成とトランスコーディングテンプレートグループの関連付け
トランスコーディング、レビュー、スナップショットキャプチャなどのメディア処理タスクをワークフローで編成します。メディアファイルをアップロードするか、メディア処理をトリガーすると、ワークフローは事前に定義されたタスクの順序に従ってファイルを自動的に処理します。
現在、ワークフローは ApsaraVideo VOD コンソールでのみ作成できます。詳細については、「ワークフローの管理」をご参照ください。
ステップ 3: トランスコーディングの開始
作成したトランスコーディングテンプレートグループまたはワークフローを使用して、ビデオをトランスコードします。メディアのアップロード中またはアップロード後にトランスコーディングをトリガーできます。
アップロード中の自動トランスコーディングトリガー
CreateUploadVideo 操作は、アップロード URL と認証情報を取得し、基本的なメディアアセット情報を作成するためにのみ使用されます。ファイルのアップロードは行いません。アップロードロジックを実装する必要があります。API 操作を呼び出してファイルをアップロードする完全な例については、「ApsaraVideo VOD API 操作を呼び出してメディアアセットをアップロードする」をご参照ください。
CreateUploadVideo または UploadMediaByURL 操作を呼び出してオーディオまたはビデオファイルをアップロードする際に、
TemplateGroupIdパラメーターでトランスコーディングテンプレートグループ ID を、またはWorkflowIdパラメーターでワークフロー ID を指定します。ファイルのアップロード後、ApsaraVideo VOD は指定されたテンプレートグループまたはワークフローに基づいてトランスコーディングジョブを自動的に開始します。
アップロード後のトランスコーディング開始
この操作は、既存のビデオの再トランスコーディング、標準暗号化の適用、またはウォーターマークパラメーターの上書きによく使用されます。
SubmitTranscodeJobs 操作を呼び出し、
TemplateGroupIdパラメーターでトランスコーディングテンプレートグループ ID を指定します。または、SubmitWorkflowJob 操作を呼び出し、WorkflowIdパラメーターでワークフロー ID を指定します。ApsaraVideo VOD は、指定されたトランスコーディングテンプレートグループまたはワークフローに基づいて、オーディオまたはビデオファイルを直ちにトランスコードします。
ステップ 4: トランスコーディング結果の表示
トランスコーディングジョブを開始した後、2 つの方法のいずれかでそのステータスと出力ビデオの URL を表示できます。その後、ビデオ URL を取得し、ApsaraVideo Player またはサードパーティのプレーヤーを使用して再生できます。
ApsaraVideo VOD で高速化ドメイン名を設定していない場合、ビデオをその URL から再生またはダウンロードすると、ストレージのアウトバウンドトラフィック料金が発生します。詳細については、「ストレージからのアウトバウンドトラフィックの課金」をご参照ください。
方法 1: API 操作の呼び出しによるクエリ
SubmitTranscodeJobs 操作を呼び出してトランスコーディングジョブを送信すると、操作はトランスコーディングジョブ ID TranscodeTaskId を返します。その後、GetTranscodeTask 操作を呼び出して、ジョブの実行ステータスと出力ビデオの URL をクエリできます。
方法 2: イベント通知の使用
ApsaraVideo VOD は、HTTP および MNS コールバックによるイベント通知をサポートしています。イベント通知を設定すると、ApsaraVideo VOD は、ファイルがアップロードまたはトランスコードされたときなど、メディアファイルが処理されたときに通知を送信します。コールバック結果からトランスコーディングジョブのステータスと出力ビデオの URL を取得できます。詳細については、「イベント通知」をご参照ください。
次のイベントはトランスコーディングに関連しています:
次のステップ
プレーヤーのアダプティブストリーミング機能を設定した後、トランスコードされたアダプティブビデオストリームを再生に使用できます。これにより、プレーヤーはネットワーク状況に応じてビデオの解像度を適応的に切り替えたり、手動で解像度や字幕を切り替えたりすることができます。
ApsaraVideo Player SDK でアダプティブストリーミング機能を設定する方法については、次のトピックをご参照ください:
ApsaraVideo Player SDK for Android: ネットワーク状況に応じたビデオ解像度の適応的切り替え
ApsaraVideo Player SDK for iOS: ネットワーク状況に応じたビデオ解像度の適応的切り替え
ApsaraVideo Player SDK for Web: ネットワーク状況に基づくアダプティブ HLS ストリーミング