ビデオファイルからライブトランスコーディング用のプレイリストを生成します。出力は M3U8 ファイルで、再生の進行状況に基づいて即時再生とオンデマンドトランスコーディングを可能にします。オフラインのトランスコーディングと比較して、このメソッドはトランスコーディングの待機時間を大幅に短縮し、トランスコーディングとストレージのオーバーヘッドを削減します。
操作説明
この API を使用する前に、Intelligent Media Management (IMM) の課金方法と料金を必ずご確認ください。
この API を呼び出す前に、現在のリージョンにアクティブなプロジェクトが存在することを確認してください。詳細については、「プロジェクト管理」をご参照ください。
- デフォルトでは、この API はビデオ、オーディオ、または字幕ストリームを 1 つだけ処理します。処理するビデオ、オーディオ、字幕ストリームの数を設定することもできます。重要 `Targets` 内の `Video`、`Audio`、`Subtitle` パラメーターをすべて空にすることはできません。パラメーターが空の場合、対応する処理は無効になります。たとえば、`Video` パラメーターが空の場合、ビデオ処理は無効になり、出力される TS ファイルにはビデオストリームが含まれません。
ソースビデオの長さは 0.x 秒以上である必要があります。最小時間は、出力フレームレートによって若干異なります。
この API は、メディアプレイリストとマスタープレイリストの両方の生成をサポートしています。詳細については、このドキュメントのパラメーターの説明をご参照ください。
これは同期 API です。トランスコーディングは、再生中または事前トランスコーディング中にのみトリガーされます。Notification パラメーターを設定して、非同期通知メッセージを通じてトランスコーディングタスクの結果を受信できます。
この API の特徴の詳細については、「ライブトランスコーディング」をご参照ください。
OSS のデータ処理機能を使用してプレイリストを生成することもできます。ただし、この機能はメディアプレイリストのみを生成し、簡略化されたパラメーターを使用します。詳細については、OSS データ処理のトピック「プレイリストの生成」をご参照ください。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
imm:GenerateVideoPlaylist |
none |
*Project
|
なし | なし |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| ProjectName |
string |
必須 |
プロジェクト名。プロジェクト名の取得方法の詳細については、「プロジェクトの作成」をご参照ください。 |
immtest |
| UserData |
string |
任意 |
カスタム情報。この情報は、非同期通知メッセージで返され、メッセージとサービスを関連付けるのに役立ちます。最大長は 2,048 バイトです。 |
{"ID": "user1","Name": "test-user1","Avatar": "http://example.com?id=user1"} |
| SourceURI |
string |
必須 |
ビデオの OSS URI。 OSS URI は `oss://${Bucket}/${Object}` の形式である必要があります。`${Bucket}` は、現在のプロジェクトと同じリージョンにある OSS バケットの名前です。`${Object}` は、ファイル名拡張子を含むファイルの完全なパスです。 説明
OSS 標準ストレージバケットのみがサポートされています。ホットリンク保護のホワイトリストが設定されたバケットはサポートされていません。 |
oss://test-bucket/test-source-object/video.mp4 |
| SourceStartTime |
number |
任意 |
プレイリストを生成する開始時刻。単位:秒 (s)。有効値:
説明
このパラメーターを SourceDuration パラメーターと一緒に設定して、ソースビデオの特定の部分のプレイリストを生成できます。 |
0 |
| SourceDuration |
number |
任意 |
プレイリストが生成される時間。単位:秒 (s)。有効値:
説明
指定された時間がソースビデオの終わりを超える場合、デフォルト値が使用されます。 |
0 |
| SourceSubtitles |
array<object> |
任意 |
追加する字幕のリスト。デフォルト値は空です。最大 2 つの字幕を追加できます。 |
|
|
object |
任意 |
字幕情報。 |
||
| URI |
string |
必須 |
埋め込む字幕ファイルの OSS URI。 OSS URI は `oss://${Bucket}/${Object}` の形式である必要があります。`${Bucket}` は、現在のプロジェクトと同じリージョンにある OSS バケットの名前です。`${Object}` は、ファイルの完全なパスです。 説明
MasterURI パラメーターは空にできません。埋め込む字幕ファイルの OSS URI、 |
oss://test-bucket/test-object/subtitle/eng.vtt |
| Language |
string |
任意 |
字幕の言語。値は ISO 639-2 標準に準拠する必要があります。デフォルト値は空です。 |
eng |
| MasterURI |
string |
任意 |
マスタープレイリストの OSS URI。 OSS URI は `oss://${Bucket}/${Object}` の形式である必要があります。`${Bucket}` は、現在のプロジェクトと同じリージョンにある OSS バケットの名前です。`${Object}` は、`.m3u8` ファイル名拡張子を持つファイルの完全なパスです。 説明
プレイリストに字幕入力または複数のターゲット出力がある場合、`MasterURI` は必須です。字幕 URI またはターゲット URI は、`MasterURI` で指定されたディレクトリと同じディレクトリまたはそのサブディレクトリにある必要があります。 |
oss://test-bucket/test-object/master.m3u8 |
| Targets |
array<object> |
必須 |
ライブトランスコーディングプレイリストの配列。配列の最大長は 6 です。各ターゲットは、最大 1 つのビデオメディアプレイリストと 1 つ以上の字幕メディアプレイリストに対応します。 説明
複数のターゲットを設定する場合、MasterURI パラメーターは空にできません。 |
|
|
array<object> |
任意 |
ライブトランスコーディングタスクの詳細。 |
||
| URI |
string |
任意 |
ライブトランスコーディングの出力ファイル (M3U8 ファイルと TS ファイルを含む) の OSS URI プレフィックス。 OSS URI は `oss://${Bucket}/${Object}` の形式である必要があります。`${Bucket}` は、現在のプロジェクトと同じリージョンにある OSS バケットの名前です。`${Object}` は、ファイル名拡張子を含まないファイルの完全なパスのプレフィックスです。
説明
MasterURI パラメーターが空でない場合、URI は MasterURI で指定されたディレクトリと同じディレクトリまたはそのサブディレクトリにある必要があります。 |
oss://test-bucket/test-object/output-video |
| Video | TargetVideo |
任意 |
ビデオ処理のパラメーター設定。空の値 (デフォルト) はビデオ処理を無効にします。出力 TS ファイルにはビデオストリームが含まれません。 説明
同じターゲット内の `Video` フィールドと `Subtitle` フィールドは相互排他的です。`Video` フィールドが設定されている場合、`Subtitle` フィールドは無視されます。 |
|
| Audio | TargetAudio |
任意 |
オーディオ処理のパラメーター設定。空の値 (デフォルト) はオーディオ処理を無効にします。出力 TS ファイルにはオーディオストリームが含まれません。 説明
同じターゲット内の `Audio` フィールドと `Subtitle` フィールドは相互排他的です。`Audio` フィールドが設定されている場合、`Subtitle` フィールドは無視されます。`Audio` と `Video` の両方を設定できます。`Audio` は出力ビデオのオーディオ情報を指定します。`Audio` のみを設定してオーディオ情報のみを生成することもできます。 |
|
| Subtitle | TargetSubtitle |
任意 |
字幕処理のパラメーター設定。 説明
`Subtitle` フィールドは、同じターゲット内の `Video` フィールドおよび `Audio` フィールドと相互排他的です。字幕は、`Subtitle` フィールドが独立して設定されている場合にのみ生成できます。 |
|
| TranscodeAhead |
integer |
任意 |
ライブトランスコーディングがトリガーされたときに事前にトランスコーディングする TS ファイルの数。デフォルトでは、2 分間のビデオが事前にトランスコーディングされます。
|
12 |
| Duration |
number |
任意 |
単一の TS ファイルの再生時間。単位:秒 (s)。デフォルト値:10。有効値:[5, 15]。 |
10 |
| InitialTranscode |
number |
任意 |
初期トランスコーディング時間。単位:秒 (s)。デフォルト値:30。
説明
このパラメーターは主に、最初の再生の待機時間を短縮し、ユーザーエクスペリエンスを向上させるために使用されます。従来の VOD シナリオを置き換えるには、ビデオ全体を初期トランスコーディングすることを試みることができます。 |
30 |
| InitialSegments |
array |
任意 |
初期トランスコーディングされた TS ファイルの時間の配列。配列の最大長は 6 です。デフォルト値は空です。このパラメーターは Duration パラメーターとは独立しています。 |
|
|
number |
任意 |
初期トランスコーディングされた TS ファイルの時間。値は [1, Duration] の範囲内である必要があります。
説明
初期トランスコーディングされた TS ファイルの時間を短くカスタマイズすると、ビデオの読み込みがスムーズになります。 |
[2, 2, 4, 4, 8, 8] |
|
| Tags |
object |
任意 |
生成された TS ファイルに OSS オブジェクトタグを追加します。OSS タグを使用して、OSS ファイルのライフサイクルをコントロールできます。 説明
現在のターゲットのタグは、このレベルで定義されたタグと親レベルで定義されたタグの UNION です。タグ名が同じ場合、現在のレベルの値が使用されます。 |
|
|
string |
任意 |
タグの値。 |
{\"key1\":\"value1\"} |
|
| Tags |
object |
任意 |
生成された TS ファイルに OSS オブジェクトタグを追加します。タグを使用して、OSS ファイルのライフサイクルをコントロールできます。 |
{"key1": "value1", "key2": "value2"} |
|
string |
任意 |
タグの値。 |
{"key1": "value1", "key2": "value2"} |
|
| CredentialConfig | CredentialConfig |
任意 |
特別な要件がない場合は、このパラメーターを空のままにしてください。 チェーン権限付与の構成。このパラメーターは必須ではありません。詳細については、「チェーン権限付与を使用して他のエンティティのリソースにアクセスする」をご参照ください。 |
|
| Notification | Notification |
任意 |
メッセージ通知の構成。詳細については、Notification をクリックしてください。非同期通知メッセージのフォーマットの詳細については、「非同期通知メッセージのフォーマット」をご参照ください。 |
|
| OverwritePolicy |
string |
任意 |
既存のメディアプレイリストを上書きするポリシー。有効値:
|
overwrite |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
応答のスキーマ |
||
| RequestId |
string |
リクエスト ID。 |
CA995EFD-083D-4F40-BE8A-BDF75FFF***** |
| Duration |
number |
出力ビデオの合計時間。 |
1082 |
| Token |
string |
マスタープレイリストのトークン。 |
92376fbb-171f-4259-913f-705f7ee0**** |
| MasterURI |
string |
マスタープレイリストの OSS URI。 |
oss://test-bucket/test-object/master.m3u8 |
| VideoPlaylist |
array<object> |
ビデオメディアプレイリストファイルのリスト。 |
|
|
object |
ビデオメディアプレイリストファイルに関する情報。 |
||
| Token |
string |
ビデオメディアプレイリスト用に生成されたトークン。このパラメーターを使用して、生成された TS ファイルの URI を構築できます。 説明
返されたトークン値を使用して、トランスコーディングされた TS ファイルの URI を構築できます。フォーマットは `oss://${Bucket}/${Object}-${Token}-${Index}.ts` です。`oss://${Bucket}/${Object}` はリクエストパラメーターで指定されたターゲット URI です。`${Token}` は返されたパラメーターです。`${Index}` は TS ファイルのシーケンス番号です。 |
affe0c6042f09722fec95a21b8b****** |
| URI |
string |
ビデオメディアプレイリストの OSS URI。 |
oss://test-bucket/test-object/output-video.m3u8 |
| Resolution |
string |
ビデオの解像度。 |
640x480 |
| FrameRate |
string |
ビデオフレームレート。 |
25/1 |
| AudioPlaylist |
array<object> |
オーディオメディアプレイリストファイルのリスト。 |
|
|
object |
オーディオメディアプレイリストファイルに関する情報。 |
||
| Token |
string |
オーディオメディアプレイリスト用に生成されたトークン。このパラメーターを使用して、生成された TS ファイルの URI を構築できます。 |
affe0c6042f09722fec95a21b8b****** |
| URI |
string |
オーディオメディアプレイリストの OSS URI。 |
oss://test-bucket/test-object/output-audio.m3u8 |
| Channels |
integer |
オーディオチャンネルの数。 |
1 |
| SubtitlePlaylist |
array<object> |
字幕メディアプレイリストファイルのリスト。 |
|
|
object |
字幕メディアプレイリストファイルに関する情報。 |
||
| Token |
string |
字幕メディアプレイリスト用に生成されたトークン。このパラメーターを使用して、生成された字幕ファイルの URI を構築できます。 説明
返されたトークン値を使用して、トランスコーディングされた字幕ファイルの URI を構築できます。フォーマットは `oss://${Bucket}/${Object}-${Token}_${Index}.ts` です。`oss://${Bucket}/${Object}` はリクエストパラメーターで指定された字幕 URI です。`${Token}` は返されたパラメーターです。`${Index}` は字幕のシーケンス番号です。 |
affe0c6042f09722fec95a21b8b****** |
| URI |
string |
字幕メディアプレイリストの OSS URI。 |
oss://test-bucket/test-object/output-subtitle.m3u8 |
| Language |
string |
字幕ストリームの言語。 説明
言語は、`SourceURI` で指定されたソースビデオの字幕ストリーム情報から取得されます。ソースビデオに言語情報が含まれていない場合、このパラメーターは空になります。 |
eng |
| Index |
integer |
字幕ストリームのシーケンス番号。0 から始まります。 |
1 |
例
成功レスポンス
JSONJSON
{
"RequestId": "CA995EFD-083D-4F40-BE8A-BDF75FFF*****",
"Duration": 1082,
"Token": "92376fbb-171f-4259-913f-705f7ee0****",
"MasterURI": "oss://test-bucket/test-object/master.m3u8",
"VideoPlaylist": [
{
"Token": "affe0c6042f09722fec95a21b8b******",
"URI": "oss://test-bucket/test-object/output-video.m3u8",
"Resolution": "640x480",
"FrameRate": "25/1"
}
],
"AudioPlaylist": [
{
"Token": "affe0c6042f09722fec95a21b8b******",
"URI": "oss://test-bucket/test-object/output-audio.m3u8",
"Channels": 1
}
],
"SubtitlePlaylist": [
{
"Token": "affe0c6042f09722fec95a21b8b******",
"URI": "oss://test-bucket/test-object/output-subtitle.m3u8",
"Language": "eng",
"Index": 1
}
]
}
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。