追加のオーディオトラックを追加する
動画に追加のオーディオトラックを添付する前に、動画をアップロードする必要があります。以下の例のURLでは、動画のUIDは VIDEO_UID として参照されます。
動画にオーディオトラックを追加するには、Cloudflare API Token ↗ が必要です。
APIは、アップロードされたオーディオファイルの長さと動画の長さの不一致を処理するために最善を尽くしますが、動画の長さに一致するオーディオファイルをアップロードすることをお勧めします。オーディオファイルの長さが動画よりも長い場合、追加のオーディオトラックは動画の長さに合わせて切り詰められます。オーディオファイルの長さが動画よりも短い場合、動画の長さに合わせるためにオーディオトラックの最後に無音が追加されます。
クラウドストレージバケットにオーディオファイルが保存されている場合、ファイルのHTTPリンクを渡すだけで済みます。Streamはファイルを取得し、ストリーミング可能にします。
label は必須であり、指定された動画の他のオーディオトラックラベルの中でトラックを一意に識別する必要があります。
curl -X POST \ -H 'Authorization: Bearer <API_TOKEN>' \ -d '{"url": "https://www.examplestorage.com/audio_file.mp3", "label": "Example Audio Label"}' \https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/stream/<VIDEO_UID>/audio/copy{ "result": { "uid": "<AUDIO_UID>", "label": "Example Audio Label", "default": false, "status": "queued" }, "success": true, "errors": [], "messages": []}uid はオーディオトラックを一意に識別し、オーディオトラックの編集や削除に使用できます。これらの操作を実行する方法については、以下の指示を参照してください。
default フィールドは、オーディオトラックがプレーヤーでデフォルトで再生されるかどうかを示します。追加のオーディオトラックは false のデフォルトステータスを持ちますが、以下の指示に従って編集できます。
status フィールドは、オーディオトラックが正常にアップロードされ、エンコードされた後に ready に変更されます。このプロセス中にエラーが発生した場合、ステータスは error になります。
HTTPリクエストを行い、オーディオファイルを file という名前の入力として含めます。
オーディオファイルのアップロードは、サイズが200 MBを超えることはできません。オーディオファイルが大きい場合は、アップロード前にファイルを圧縮してください。
フォーム入力 label は必須であり、指定された動画の他のオーディオトラックラベルの中でトラックを一意に識別する必要があります。
cURLの -F フラグは、コンテンツタイプヘッダーを自動的に設定し、audio_file.mp3 を file というフォーム入力にマッピングします。
curl -X POST \ -H 'Authorization: Bearer <API_TOKEN>' \ -F file=@/Desktop/audio_file.mp3 \ -F label='Example Audio Label' \https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/stream/<VIDEO_UID>/audio{ "result": { "uid": "<AUDIO_UID>", "label": "Example Audio Label", "default": false, "status": "queued" }, "success": true, "errors": [], "messages": []}動画に追加されたオーディオトラックを表示するには:
curl \ -H 'Authorization: Bearer <API_TOKEN>' \https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/stream/<VIDEO_UID>/audio{ "result": { "audio": [ { "uid": "<AUDIO_UID>", "label": "Example Audio Label", "default": false, "status": "ready" }, { "uid": "<AUDIO_UID>", "label": "Another Audio Label", "default": false, "status": "ready" } ] }, "success": true, "errors": [], "messages": []}このAPIは、動画アップロードに添付されたオーディオの情報を返しません。
追加のオーディオトラックの default ステータスまたは label を編集するには:
curl -X PATCH \ -H 'Authorization: Bearer <API_TOKEN>' \ -d '{"label": "Edited Audio Label", "default": true}' \https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/stream/<VIDEO_UID>/audio/<AUDIO_UID>オーディオトラックの default ステータスを true に編集すると、動画の他のすべてのオーディオトラックの default ステータスが false にマークされます。
{ "result": { "uid": "<AUDIO_UID>", "label": "Edited Audio Label", "default": true, "status": "ready" }, "success": true, "errors": [], "messages": []}動画に関連付けられた追加のオーディオトラックを削除するには:
curl -X DELETE \ -H 'Authorization: Bearer <API_TOKEN>' \https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/stream/<VIDEO_UID>/audio/<AUDIO_UID>default オーディオトラックの削除は許可されていません。削除する前に、別のオーディオトラックを default として割り当てる必要があります。
errors 応答フィールドにエントリがある場合、オーディオトラックは削除されていません。
{ "result": "ok", "success": true, "errors": [], "messages": []}- Streamプレーヤーは現在、複数のオーディオトラックの選択をサポートしていません。Cloudflare Streamから返される動画マニフェストにはオーディオトラック情報が含まれており、他の動画プレーヤーではマルチオーディオ選択がサポートされています。