Black Forest Labs: FLUX Video Edit
FLUX Video Edit [fast] は、文字の編集指示によって既存クリップを変えます。文書化された元映像の長さ、フレーミング、音声の制約の範囲で、要素の追加・削除・置換、設定やスタイルの変更、既存台詞の修正ができます。
モデルについて
この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。
FLUX Video Edit [fast] は、既存動画を変更するための Black Forest Labs のプロンプト誘導型ワークフローです。元クリップ 1 本と編集内容の指示を受け取り、編集済み MP4 を返します。ショットの土台は元映像です。時間、フレーミング、カメラ移動、タイミングが開始構造を与えます。意図した変更が不明確になる完全な新シーン説明ではなく、何を変えるかをプロンプトで指定してください。
変更と位置を名指しする
文書化された編集には、物体やキャラクターの削除・追加・置換、設定の再構築、クリップのスタイル変更、見える文字の変更、台詞や音の修正があります。対象と操作から始めてください。例えば、座っている人物と部屋を残して椅子のバッグを削除する、または手の行動を変えず無地のマグカップを青いほうろうのマグカップに置き換える指示です。似た物体が複数見えるなら、位置、外観、役割で対象を区別します。
追加では場所、大きさ、関連する行動を説明します。ソファの隣の背の高い赤いランプは、ショット内のどこかに未指定のランプを加えるより具体的です。置換では何を何に変えるか、維持する動きや接触を示してください。メーカーのプロンプトガイドは、変更を完全に名指しする最短の指示を推奨し、編集に必要なところへ詳細を加えます。範囲を評価できない一般的な改善を求めず、元の特徴を意図して維持してください。
設定、スタイル、ラフアニメーション
設定変更では、行動を保ちながら見える環境を再構築できます。メーカーは、登る面を別の構造に置き換え、新たな接触点を指定し、キャラクターの手足が意味のある面に触れるようにする例を示しています。実用的なシーンでは、変える周囲と、既存の動きが依存する形状を説明してください。元の行動と新背景の関係が明示されていれば、評価しやすくなります。
ガイドは、ラフアニメーションを完成した視覚表現へ変える例も示しています。どのブロックアウト物体を目的の乗り物や小道具にするか名指しし、経路、速度、カメラとの関係を保ってください。スタイル変更では美的方向性に加え、完成する材質、表面、光、反射を説明します。同じ行動でも、粘土風シーンと写真風シーンには異なる見える手掛かりが必要です。
さらに修正する場合は、最初の編集結果を新たな元映像にできます。原本と選択した各段階を保管し、次のパスに明確な目的を 1 つ与えてください。文書化された例は、ラフプレビューから完成した設定へ進み、その後さらに照明を変えます。各パス後に修正クリップと直前の元映像を比較し、残すつもりだった特徴がまだあるか確認してください。
台詞は既存の時間に収める
ワークフローは、台詞や音の変更指示がない限り元音声を引き継ぎます。無音の元映像は無音の結果を返し、修正する既存発話を提供しません。台詞編集では、意図した台詞を引用し、話者を指定し、元台詞が占める時間に新しい言葉を収めてください。ガイドは、長い置換台詞が利用可能な発話区間を超え、切られた例を報告しています。多くの言葉を書いても既存ショット内の発話時間は増えません。
聞こえる台詞と見える演技を一緒に確認します。言葉の欠落、タイミングのずれ、不要な音変更を識別できるよう、元の文言と意図した置換のコピーを保管してください。実用的な結果は編集シーン内の修正された発話の瞬間であり、レンダリングが完了したからといって忠実な書き起こしだと仮定するものではありません。
元映像の制限と引き継ぐ出力
メーカーの厳密な仕様は、動画と編集プロンプトを要求します。指示は前後の空白を除去した後で 1~4,096 文字です。クリップは URL またはエンコード済み MP4 で渡し、最大 15 秒、入力上限 50 MiB です。各辺は 160 ピクセル以上、正規化後のクリップは 24 fps で最低 17 フレーム、約 0.7 秒を含む必要があります。長過ぎる元映像は黙ってトリミングされるのではなく拒否され、小さ過ぎる元映像は処理中に失敗する場合があります。
文書化された処理は 24 fps で、元の長さとアスペクト比に従います。720p の仕様を超える入力は縮小されます。メーカーは 1920×1088 の元映像が 1248×704 で返る例を挙げています。この編集仕様では、時間、解像度、アスペクト比は独立した出力設定ではありません。サンプリングの手順は内部で処理され、mode、version、seed、generate_audio などのフィールドは記載されたリクエスト契約で受け付けません。
新ショット生成のために動きやスタイルの着想としてだけ動画を使うのは、別のワークフローです。この編集機能は画像参照、音声のみの入力、マスク、クリップ延長の要求を受け付けません。編集指示を書く前に、実際に変える動画を準備し、選択した時間を保ってください。非同期処理後、メーカーは約 1 時間有効な一時署名付き配信リンクで編集済み MP4 を返します。結果を保存し、長い編集作品に使う前に、変えた物体、周囲のフレーム、タイミング、音声を元映像と比較してください。
Ailoot Ultra · 動画 POST /v1/videos black-forest-labs/flux-video-edit
black-forest-labs/flux-video-edit
black-forest-labs/flux-video-editはじめに
FLUX Video Edit [fast] は、文字の編集指示によって既存クリップを変えます。文書化された元映像の長さ、フレーミング、音声の制約の範囲で、要素の追加・削除・置換、設定やスタイルの変更、既存台詞の修正ができます。
- 対応する入力
- テキスト · 画像 · 音声 · 動画
- 結果
- 動画
Ailootで利用可能 · 入力とメソッド
Ailoot Ultra · 動画 POST /v1/videos
- 入力の種類
text,image,audio,video- 出力の種類
video
| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
|---|---|---|---|---|
フィールドmodel | 種類string | 要件必須 | 値と制限 black-forest-labs/flux-video-edit | デフォルト— |
フィールドinput_references | 種類array | 要件必須 | 値と制限 最小項目数: 1 最大項目数: 1 | デフォルト— |
フィールドprompt | 種類string | 要件必須 | 値と制限 最小の長さ: 1 | デフォルト— |
メソッドのパラメータとライフサイクル
| パラメータ | 仕様 |
|---|---|
パラメータcontent_type | 仕様application/json |
パラメータrequired | 仕様model, input_references, prompt |
パラメータmaterial_types | 仕様text, image, audio, video |
パラメータmaterial_conditions | 仕様実際に完了した所有動画アセットのコンテンツURLを、返された署名付きで厳密に一つ使用してください。アセットの所有者、型、および保存済みバイト列の証跡は、リクエストと一致する必要があります。 |
ライフサイクル: asynchronous_job_then_owned_outputs
GET /v1/videos/{request_id} · 実際に返されたidまたはpolling_url
GET /v1/videos/{request_id}/content
料金
最終料金の計算方法
表示料金は生成前の費用の見積もりです。最終請求額は、元の生成処理に記録された費用から計算されます。実測された出力時間や予測数量が、そのまま最終的な課金数量になるわけではありません。
料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。
- 高速モード
- 未指定 高速モードが選択されている場合
- Flex モード
- 未指定 flex モードが選択されている場合
- 最大推論量
- 未指定 推論量が最大で、調整に既定値(default)を使用する場合
比較用の推定料金
設定別の価格
各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。
| 設定 | 料金表 | 予測数量 | 課金単位 | 課金条件 | 料金 |
|---|---|---|---|---|---|
| 設定基本トークン料金 | 料金表基本料金 | 予測数量— | 課金単位— | 課金条件— | 料金 入力 · 入力トークン · 比較専用の見積もり — / 1K トークン 出力 · 出力トークン · 比較専用の見積もり — / 1K トークン 入力 · キャッシュ読み取り · 比較専用の見積もり — / 1K トークン 入力 · キャッシュ書き込み · 比較専用の見積もり — / 1K トークン 入力 · キャッシュ書き込み、1時間 · 比較専用の見積もり — / 1K トークン |
| 設定動画料金 | 料金表— | 予測数量— | 課金単位動画1秒あたり | 課金条件この価格キーには追加条件が定義されていません。 | 料金 出力 · 動画料金 · 比較専用の見積もり $0.06 動画1秒あたり |
| 設定生成費用の見積もり | 料金表— | 予測数量生成1回分の概算 | 課金単位— | 課金条件— | 料金 出力 · 推定生成コスト · 比較専用の見積もり $0.06 生成前の見積もり この見積もりは追加料金ではなく、完了した生成処理に対する固定料金でもありません。 |
Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →
リクエスト例
Ailoot Ultra · 動画
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_INPUT_REFERENCES_JSON:?Set the actual documented input value}"
export AILOOT_INPUT_REFERENCES_JSON
: "${AILOOT_PROMPT:?Set the actual documented input value}"
export AILOOT_PROMPT
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
request={'model': 'black-forest-labs/flux-video-edit', 'input_references': '${ACTUAL_OWNED_INPUT_REFERENCES}', 'prompt': '${ACTUAL_EDIT_PROMPT}'}
request['input_references']=json.loads(os.environ['AILOOT_INPUT_REFERENCES_JSON'])
request['prompt']=os.environ['AILOOT_PROMPT']
Path('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.
結果を受け取って保存
Ailoot Ultra · 動画
GET /v1/videos/{request_id}GET /v1/videos/{request_id}/content
完了したアセットをすべて保存
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
u=urljoin("https://api.ailoot.ai",x)
z=urlsplit(u)
if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
curl --fail-with-body --silent --show-error "$asset_url" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
index=$((index + 1))
done < asset-urls.txt
完了した結果をすべて保存
完了した動画や返されたファイルをすべて保存し、実際に返されたすべてのアセットURLから取得してください。
レスポンスとヘッダーの全体、実際の出力すべて、最初に返された識別子、使用量フィールドすべてを保存してください。作成リクエストを再送せずに、元の操作を復旧してください。
元のレスポンスを確認する場合
X-Client-Request-ID、X-Ailoot-Task-Id、および実際に返されたid/polling_urlを保持してください。元のジョブを継続し、作成リクエストを再送信しないでください。
レスポンスのフィールド
| フィールド | 種類 |
|---|---|
フィールドid | 種類 |
フィールドstatus | 種類 |
フィールドdata[] | 種類 |
フィールドoutputs[] | 種類 |
エイリアス
モデルのエイリアス
Ailoot Ultra black-forest-labs/flux-video-edit
メソッドパスのエイリアス
上記に表示されたメソッドパスを使用してください。
関連する呼び出し用ID
FAQ · Black Forest Labs: FLUX Video Edit
- 利用できる入力と結果は何ですか?
POST /v1/videos·black-forest-labs/flux-video-edit:text,image,audio,video→video- リクエストはどの項目を使用しますか?
POST /v1/videos·black-forest-labs/flux-video-edit:model,input_references,prompt