ApsaraVideo Media Processing (MPS) を使用してメディアをトランスコーディングするには、コンソールでトランスコーディングジョブを送信するか、API オペレーションを呼び出します。このトピックでは、MPS で標準トランスコーディングジョブを作成する方法について説明します。
事前準備
以下の準備を完了してください。すでに完了している場合は、このセクションをスキップできます。
-
パイプラインを有効化します。標準トランスコーディングジョブには、標準パイプラインを使用してください。
処理するビデオを OSS にアップロードします。
ジョブを作成する場合は、ビデオを直接 OSS にアップロードします。詳細については、「ビデオのアップロード」をご参照ください。
ワークフローを作成し、自動的にトリガーする場合は、ビデオをアップロードする前にメディアバケットを追加し、ワークフローを作成する必要があります。入力および出力メディアバケットを指定し、メディアファイルを入力メディアバケットにアップロードすると、MPS はアップロードに関するメッセージを受信し、関連付けられたワークフローをトリガーします。ワークフローが完了すると、処理されたメディアファイルは出力メディアバケットにアップロードされます。詳細については、「メディアバケットの追加」をご参照ください。
-
トランスコーディングテンプレートを設定します。
-
ウォーターマークテンプレートを使用すると、ビデオへのウォーターマークの追加を簡素化できます。詳細については、「ウォーターマークテンプレート」をご参照ください。
任意。通知機能を有効にします。MPS からジョブやワークフローに関する通知を MNS トピックまたはキューに送信する場合は、必要に応じて MNS キューまたはトピックを設定します。詳細については、「通知の設定」をご参照ください。
コンソールでのジョブの送信
単一ジョブ
-
ApsaraVideo Media Processing コンソールにログインします。
-
上部のナビゲーションバーで、リージョンを選択します。たとえば、[中国 (杭州)] を選択します。
-
左側のナビゲーションウィンドウで、タスク管理 を選択します。
-
エンコード タブで、タスクの作成 をクリックします。
-
パラメーターを設定します。
パラメーター
説明
入力ファイルの URL
選択 をクリックします。バケット ドロップダウンリストからバケットを選択します。選択したバケット内のフォルダが パス の下に表示されます。フォルダから入力ファイルを選択します。
説明-
ドロップダウンリストにバケットが表示されない場合は、OSS コンソールに移動して現在のリージョンにバケットを作成します。詳細については、「メディアバケットの追加」をご参照ください。
-
バケットを選択しても [パス] の下にファイルが表示されない場合は、OSS コンソールに移動して、現在のリージョンのそのバケットにファイルをアップロードします。
-
OSS が有効化されていないというプロンプトが表示された場合は、OSS コンソールに移動してサービスを有効化します。
-
ロールエラーまたは権限拒否メッセージが表示された場合は、Resource Access Management (RAM) コンソールに移動し、現在の RAM ユーザーに必要な OSS 権限を付与します。AliyunOSSFullAccess ポリシーをアタッチして完全な OSS 権限を付与するか、必要に応じてカスタムポリシーを作成できます。詳細については、「RAM ユーザーの作成と権限付与」をご参照ください。
エンコードパイプライン
ドロップダウンリストからパイプラインを選択します。
説明-
ドロップダウンリストにパイプラインが表示されない場合は、まずパイプラインを有効化します。詳細については、「パイプラインの作成」をご参照ください。
-
トランスコーディングパイプラインの同時実行数は保証されておらず、利用可能なリソースに依存します。デフォルトの同時実行数は 200 です。
出力ファイル名
出力ファイルの名前を入力します。M3U8 を除くすべてのファイルタイプで、ファイル拡張子を追加する必要があります。たとえば、
example_video01.mp4と入力します。出力パス
選択 をクリックします。バケット ドロップダウンリストからバケットを選択します。バケット内のフォルダが パス の下に表示されます。フォルダを出力パスとして選択します。
説明-
出力パスが入力パスと同じでファイル名が異なる場合、ソースファイルは上書きされません。ファイル名が同じ場合、ソースファイルが上書きされるかどうかは OSS の設定によって決まります。ファイルが上書きされないようにするには、「同名オブジェクトの上書き防止 (Java SDK V1)」をご参照ください。この設定を有効にすると、出力ファイルがソースファイルと同じ名前の場合、ジョブは OSS への出力ファイルの書き込みに失敗します。出力ファイルには別の名前を使用することを推奨します。
-
その他の一般的な問題については、入力ファイルの URL の説明をご参照ください。
-
-
次 をクリックします。
-
エンコードテンプレート を設定します。
パラメーター
説明
テンプレートタイプ
トランスコーディングテンプレートのタイプを選択します。プリセットテンプレートの詳細については、「プリセットテンプレートの詳細」をご参照ください。カスタムトランスコーディングテンプレートを作成するには、「トランスコーディングテンプレート」をご参照ください。
出力フォーマット
ドロップダウンリストから出力フォーマットを選択します。デフォルト値は mp4 です。
テンプレート
リストからテンプレートを選択します。デフォルト値はMP4-4Kです。
(任意) ウォーターマークテンプレート
[スイッチ] をオンにします。
-
ウォーターマークテンプレート ドロップダウンリストから、作成したウォーターマークテンプレートを選択します。リストにウォーターマークテンプレートがない場合は、まず作成してください。
-
ウォーターマーク画像 の横にある 選択 をクリックします。バケット ドロップダウンリストからバケットを選択します。バケット内のフォルダが パス の下に表示されます。フォルダからイメージファイルを選択します。
説明サポートされているウォーターマークファイルには、PNG イメージ、アニメーション PNG イメージ、MOV アニメーションが含まれます。
(オプション) ビデオクリップ
[スイッチ] をオンにします。開始時刻と持続時間を設定してクリップを定義します。
-
クリップ開始時刻 フィールドで、開始時刻を HH:MM:SS 形式で選択します。
説明開始時刻は、ビデオの総再生時間より短くする必要があります。そうでない場合、トランスコーディングジョブは失敗します。
-
クリップ時間 フィールドで、持続時間を HH:MM:SS 形式で選択します。
説明指定したクリップの持続時間がビデオの終わりを超える場合、クリップはソースビデオの最後まで実行されます。
(任意) 回転角度
時計回りの回転角度を入力します。値は [0, 360] の範囲内である必要があります。
-
-
タスクの送信 をクリックして、トランスコーディングジョブを作成および送信します。
ジョブが送信されると、このタブのジョブリストで実行ステータス、設定詳細、入力パス、出力パスを表示できます。
説明トランスコーディングジョブが失敗し、失敗の詳細を表示できない場合は、ネットワーク接続を確認し、接続が安定してからジョブを再送信してください。
ワークフロー
-
ApsaraVideo Media Processing コンソールにログインします。
-
上部のナビゲーションバーで、リージョンを選択します。
-
左側のナビゲーションウィンドウで、[ワークフロー] > [ワークフローオーケストレーション] を選択します。
-
ワークフローの作成 をクリックします。
-
必要に応じてワークフローパラメーターを設定します。
-
ワークフロー名:ワークフローの名前を入力します。
-
プリセット:ドロップダウンリストから設定プランを選択します。
説明MPS は、一般的なユースケース向けにプリセットワークフローを提供しています。プリセットワークフローを選択して編集するか、カスタムワークフローを作成できます。
-
-
ワークフローのトポロジーを編集します。
-
関連するノードの横にあるプラスアイコン (+) をクリックし、ドロップダウンリストから エンコード ノードを選択します。
-
エンコード ノードの横にある鉛筆アイコンをクリックして、基本設定 ページを開きます。
-
トランスコーディングパラメーターを設定します。
パラメーター
説明
名前
このノードの名前を入力します。
エンコードテンプレート
選択 をクリックします。表示されるダイアログボックスで、エンコードテンプレート を設定します。
-
テンプレートタイプ を選択します。
-
出力フォーマット を選択します。
-
テンプレート を選択します。
-
OK をクリックします。
説明プリセットテンプレートの詳細については、「プリセットテンプレートの詳細」をご参照ください。カスタムテンプレートを作成するには、「トランスコーディングテンプレート」をご参照ください。
出力パス
選択 をクリックします。バケット ドロップダウンリストからバケットを選択します。バケット内のフォルダが パス の下に表示されます。出力パスとして場所を選択します。
説明-
出力パスが入力パスと同じ場合:
-
ファイル名が異なる場合、ソースファイルは上書きされません。
-
ファイル名が同じ場合、ソースファイルが上書きされるかどうかは OSS の設定によって決まります。ファイルが上書きされないようにするには、「同名オブジェクトの上書き防止 (Java SDK V1)」をご参照ください。この設定を有効にすると、出力ファイルがソースファイルと同じ名前の場合、ジョブは OSS への出力ファイルの書き込みに失敗します。出力ファイルには別の名前を使用することを推奨します。
-
-
後続のワークフロー実行で出力ファイルが上書きされるのを防ぐために、次の組み込み変数の組み合わせを使用できます:
-
{RunId}:メディアワークフローの実行 ID。 -
{ObjectPrefix}:バケット情報を除くソースファイルのパス。 -
{FileName}:拡張子を含むソースファイルの名前。出力ファイルの拡張子は、選択したトランスコーディングテンプレートによって決まります。 -
{ExtName}:ソースファイルの拡張子。
-
(任意) ウォーターマーク
[スイッチ]をオンにします。
-
ウォーターマークテンプレート ドロップダウンリストからテンプレート名を選択します。
説明ドロップダウンリストにウォーターマークテンプレートがない場合は、まず作成してください。
-
ウォーターマーク画像 の横にある 選択 をクリックして、ウォーターマークイメージのパスを追加します。
説明サポートされているウォーターマークファイルには、PNG イメージ、アニメーション PNG イメージ、MOV アニメーションが含まれます。
(オプション) [翻訳しない]
[スイッチ] をオンにします。
暗号化方式 で、Alibaba Cloud プライベート暗号化 または HLS 標準暗号化 を選択します。詳細については、「ビデオ暗号化」をご参照ください。
(任意) クリップ
[スイッチ] をオンにします。
-
クリップ方式 には、ビデオクリップ編集 または エンディング編集 を選択します。
-
クリップ開始時刻 フィールドで、開始時刻を選択します。
-
長さ フィールドで、持続時間を選択します。
説明-
開始時刻は、ビデオの総再生時間より短くする必要があります。そうでない場合、トランスコーディングジョブは失敗します。
-
指定したクリップの持続時間がビデオの終わりを超える場合、クリップはソースビデオの最後まで実行されます。
-
(オプション) エンディングの追加
[スイッチ] をオンにします。ファイルパス の横にある 選択 をクリックし、クレジットビデオファイルのパスを選択します。
(任意) 回転角度
時計回りの回転角度を入力します。値は [0, 360] の範囲内である必要があります。
-
-
OK をクリックして、エンコード ノードの設定を完了します。
-
-
[保存] をクリックしてワークフローを作成します。
API 経由でのジョブの送信
コンソールでのジョブまたはワークフローの作成がニーズを満たさない場合は、SubmitJobs オペレーションを呼び出して、ビジネスロジックに基づいてプログラムでトランスコーディングジョブを送信し、パラメーターを設定できます。
-
SubmitJobs オペレーションを呼び出して、トランスコーディングジョブを送信します。
詳細については、「トランスコーディングジョブの送信」をご参照ください。作成プロセス中に、次のようにトランスコーディング情報を設定する必要があります:
-
PipelineId:標準パイプラインの ID を使用します。 -
TemplateId:ニーズに基づいてトランスコーディングテンプレートを選択します。プリセットテンプレートが要件を満たさない場合は、カスタムテンプレートを作成できます。詳細については、「カスタムトランスコーディングテンプレートの追加」をご参照ください。 -
(任意) 暗号化が必要な場合は、
OutputオブジェクトでEncryptionパラメーターを設定します。説明暗号化された出力は M3U8 形式である必要があります。API は Base64 および KMS 暗号化方式をサポートしています。詳細については、「パラメーターの詳細」をご参照ください。
-
-
コールバック通知の受信
トランスコーディングジョブが完了すると、パイプラインのイベント通知を設定している場合、Simple Message Queue (formerly MNS) の指定されたキューまたはトピックにメッセージが送信されます。詳細については、「通知の受信」をご参照ください。
-
ジョブ結果のクエリ
-
トランスコーディングジョブのクエリ オペレーションを呼び出してジョブ結果をクエリし、出力ファイルの URL を取得します。
-
トランスコーディングジョブのリスト化 オペレーションを呼び出して、パイプライン ID、ジョブステータス、作成時間範囲に基づいて複数のトランスコーディングジョブをクエリします。
-