Skip to main content

ビデオ編集 2.1

Wanxiang 汎用ビデオ編集モデルは、 マルチモーダル入力 (テキスト、画像、ビデオ) をサポートし、 複数画像参照、ビデオリペインティング、局所編集、ビデオ拡張、ビデオアウトペインティング という 5 つのコア機能を提供します。

適用範囲

  • サポートされるモデルはリージョンによって異なります。リソースはリージョン間で分離されています。各リージョンでサポートされているモデルについては、Model Studio コンソールをご参照ください。
  • API を呼び出す際は、モデル、エンドポイント URL、API キーがすべて同じリージョンに属していることを確認してください。リージョンをまたいだ呼び出しは失敗します。
このトピックのサンプルコードは、シンガポールリージョンに適用されます。

コア機能

複数画像参照

機能紹介:最大 3 枚の参照画像をサポートします。これには、主題やバックグラウンド (人物、動物、衣服、シーンなど) を含めることができます。モデルは複数の画像を統合して、一貫性のあるビデオコンテンツを生成します。 パラメーター:
  • function:image_reference に設定する必要があります。
  • ref_images_url:URL の配列です。1〜3 枚の参照画像を入力できます。
  • obj_or_bg:各画像を主題 (obj) またはバックグラウンド (bg) として識別します。長さは ref_images_url と同じでなければなりません。
入力プロンプト入力参照画像 1 (参照主題)入力参照画像 2 (参照バックグラウンド)出力ビデオ
ビデオでは、霧深い古代の森の奥から一人の少女が歩いてきます。彼女の足取りは軽く、カメラは彼女の優雅な一瞬一瞬を捉えます。彼女が立ち止まり、周りの緑豊かな森を見渡すと、驚きと喜びの笑みが彼女の顔に現れます。光と影の交錯の中で捉えられたこの瞬間は、彼女と自然との素晴らしい出会いを記録しています。
image
image
呼び出しを行う前に、まずAPI キーを取得し、次にAPI キーを環境変数として設定する必要があります。
  • curl
  • Python
  • Java
ステップ 1:タスクを作成してタスク ID を取得
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "wan2.1-vace-plus",
    "input": {
        "function": "image_reference",
        "prompt": "In the video, a girl gracefully emerges from a misty, ancient forest. Her steps are light, and the camera captures her every nimble moment. When she stops to look at the lush woods around her, a smile of surprise and joy blossoms on her face. This scene, frozen in an interplay of light and shadow, records her wonderful encounter with nature.",
        "ref_images_url": [
            "http://wanx.alicdn.com/material/20250318/image_reference_2_5_16.png",
            "http://wanx.alicdn.com/material/20250318/image_reference_1_5_16.png"
        ]
    },
    "parameters": {
        "prompt_extend": true,
        "obj_or_bg": ["obj","bg"],
        "size": "1280*720"
    }
}'
ステップ 2:タスク ID に基づいて結果を取得{task_id} を、前の API 呼び出しで返された task_id の値に置き換えます。task_id は 24 時間クエリに対して有効です。
curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

ビデオリペインティング

機能紹介:入力ビデオから主題のポーズとアクション、構図とモーションの輪郭、またはスケッチ構造を抽出します。その後、テキストプロンプトに基づいて、同じ動的特徴を持つ新しいビデオを生成します。参照画像を使用して、元のビデオの主題を置き換えることもできます。 パラメーター:
  • function:video_repainting に設定する必要があります。
  • video_url:必須。入力ビデオの URL (MP4 形式、50 MB 以下、5 秒以下)。
  • control_condition:必須。ビデオの特徴抽出方法を設定します。これにより、新しいビデオで元のビデオのどの特徴を保持するかが決まります。
    • posebodyface:顔の表情と体の動きを抽出します (顔の表情の詳細を保持)。
    • posebody:顔を除き、体の動きのみを抽出します (体の動きのみを制御)。
    • depth:構図とモーションの輪郭を抽出します (シーンの構造を保持)。
    • scribble:スケッチ構造を抽出します (スケッチのエッジの詳細を保持)。
  • strength:オプション。特徴抽出の強度を制御します。範囲は [0.0, 1.0] です。デフォルトは 1.0 です。値が大きいほど出力は元のビデオに近くなり、値が小さいほど創造性の自由度が高まります。
  • ref_images_url:オプション。入力ビデオの主題を置き換えるために、1 枚の参照画像の URL を指定します。
入力プロンプト入力ビデオ出力ビデオ
ビデオには、紳士が運転する黒いスチームパンクスタイルの車が映っており、歯車や銅管で飾られています。背景はレトロな要素を持つ蒸気動力のキャンディー工場で、ヴィンテージで遊び心のあるシーンを作り出しています。
  • curl
  • Python
  • Java
ステップ 1:タスクを作成してタスク ID を取得
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "wan2.1-vace-plus",
    "input": {
        "function": "video_repainting",
        "prompt": "The video shows a black steampunk-style car driven by a gentleman, adorned with gears and copper pipes. The background is a steam-powered candy factory with retro elements, creating a vintage and fun scene.",
        "video_url": "http://wanx.alicdn.com/material/20250318/video_repainting_1.mp4"
    },
    "parameters": {
        "prompt_extend": false,
        "control_condition": "depth"
    }
}'
ステップ 2:タスク ID に基づいて結果を取得{task_id} を、前の API 呼び出しで返された task_id の値に置き換えます。task_id は 24 時間クエリに対して有効です。
curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

局所編集

機能紹介:ビデオの指定された領域に対して詳細な編集を行います。要素の追加、削除、変更、および主題やバックグラウンドの置き換えをサポートします。マスク画像をアップロードして編集エリアを指定すると、モデルは自動的にターゲットを追跡し、生成されたコンテンツをブレンディングします。 パラメーター:
  • function:video_edit に設定する必要があります。
  • video_url:必須。元の入力ビデオの URL。
  • mask_image_url:オプション。このパラメーターと mask_video_url のいずれかを選択します。このパラメーターの使用を推奨します。編集する部分を白、変更しない部分を黒で示したマスク画像の URL を入力できます。
  • mask_frame_id:オプション。mask_image_url と一緒に使用し、マスクがビデオのどのフレームに対応するかを指定します (デフォルトは最初のフレーム)。
  • mask_type:オプション。編集エリアの動作を指定します:
    • tracking (デフォルト):編集エリアはターゲットオブジェクトのモーション軌跡を自動的に追跡します。
    • fixed:編集エリアは固定された位置に留まります。
  • expand_ratio:オプション。mask_type が tracking の場合にのみ有効です。
    • 機能:マスクエリアが外側に拡張する比率を設定します。値の範囲は [0.0, 1.0] で、デフォルトは 0.05 です。
    • 説明:値が小さいほどマスクはターゲットに密着します。値が大きいほどマスクの範囲が広がります。
  • ref_images_url:オプション。編集エリア内のコンテンツを参照画像の内容に置き換えるために、1 枚の参照画像の URL を指定します。
入力プロンプト入力ビデオ入力マスク画像出力ビデオ
ビデオには、パリ風のフレンチカフェで、スーツを着たライオンが優雅にコーヒーを飲んでいる様子が映っています。片手にコーヒーカップを持ち、リラックスした表情で一口飲んでいます。カフェは趣味良く装飾され、柔らかな色調と暖かい照明がライオンのいるエリアを照らしています。
mask
白いエリアは編集エリアを示します。
  • curl
  • Python
  • Java
ステップ 1:タスクを作成してタスク ID を取得
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "wan2.1-vace-plus",
    "input": {
        "function": "video_edit",
        "prompt": "The video shows a Parisian-style French cafe where a lion in a suit elegantly sips coffee. It holds a coffee cup in one hand, taking a gentle sip with a relaxed expression. The cafe is tastefully decorated, with soft hues and warm lighting illuminating the lion's area.",
        "mask_image_url": "http://wanx.alicdn.com/material/20250318/video_edit_1_mask.png",
        "video_url": "http://wanx.alicdn.com/material/20250318/video_edit_2.mp4",
        "mask_frame_id": 1
    },
    "parameters": {
        "prompt_extend": false,
        "mask_type": "tracking",
        "expand_ratio": 0.05
    }
}'
ステップ 2:タスク ID に基づいて結果を取得{task_id} を、前の API 呼び出しで返された task_id の値に置き換えます。task_id は 24 時間クエリに対して有効です。
curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

ビデオ拡張

機能紹介:入力された画像またはビデオクリップに基づいて、連続する後続コンテンツを予測し生成します。「最初のフレーム/最初のクリップ」から前方に拡張するか、「最後のフレーム/最後のクリップ」から後方に拡張するかをサポートします。最終的に生成されるビデオの合計時間は 5 秒に固定されます。 パラメーター:
  • function:video_extension に設定する必要があります。
  • prompt:必須。希望する拡張コンテンツを記述します。
  • first_clip_url:オプション。最初のビデオクリップ (3 秒以下) の URL を入力できます。モデルはこのクリップに基づいてビデオの残りの部分を生成します。
  • last_clip_url:オプション。最後のビデオクリップ (3 秒以下) の URL を入力できます。モデルはこのクリップに基づいてビデオの前の部分を生成します。
  • first_frame_url:オプション。最初のフレーム画像の URL を入力できます。ビデオはこのフレームから前方に拡張されます。
  • last_frame_url:オプション。最後のフレーム画像の URL を入力できます。ビデオはこのフレームから後方に拡張されます。
    注:first_clip_url、last_clip_url、first_frame_url、last_frame_url の 4 つのパラメーターのうち、少なくとも 1 つを入力として提供する必要があります。
入力プロンプト入力最初のクリップ (1 秒)出力ビデオ (5 秒に拡張)
サングラスをかけた犬が路上でスケートボードをしている、3D カートゥーン。
  • curl
  • Python
  • Java
ステップ 1:タスクを作成してタスク ID を取得
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "wan2.1-vace-plus",
    "input": {
        "function": "video_extension",
        "prompt": "A dog wearing sunglasses skateboarding on the street, 3D cartoon.",
        "first_clip_url": "http://wanx.alicdn.com/material/20250318/video_extension_1.mp4"
    },
    "parameters": {
        "prompt_extend": false
    }
}'
ステップ 2:タスク ID に基づいて結果を取得{task_id} を、前の API 呼び出しで返された task_id の値に置き換えます。task_id は 24 時間クエリに対して有効です。
curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

ビデオアウトペインティング

機能紹介:プロンプトと指定された比率に基づいて、ビデオの主題の一貫性とバックグラウンドの自然なブレンディングを維持しながら、ビデオコンテンツを上下左右の方向に拡張します。 パラメーター:
  • function:video_outpainting に設定する必要があります。
  • video_url:必須。元の入力ビデオの URL。
  • top_scale:オプション。上方向の拡張率。範囲は [1.0, 2.0] です。デフォルトは 1.0 (拡張なし) です。
  • bottom_scale:オプション。下方向の拡張率。範囲は [1.0, 2.0] です。デフォルトは 1.0 です。
  • left_scale:オプション。左方向の拡張率。範囲は [1.0, 2.0] です。デフォルトは 1.0 です。
  • right_scale:オプション。右方向の拡張率。範囲は [1.0, 2.0] です。デフォルトは 1.0 です。
例:left_scale を 1.5 に設定すると、フレームの左側が元の幅の 1.5 倍に拡張されます。
入力プロンプト入力ビデオ出力ビデオ
優雅な女性が情熱的にバイオリンを弾いており、その後ろには完全な交響楽団がいます。
  • curl
  • Python
  • Java
ステップ 1:タスクを作成してタスク ID を取得
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "wan2.1-vace-plus",
    "input": {
        "function": "video_outpainting",
        "prompt": "An elegant woman passionately plays the violin, with a full symphony orchestra behind her.",
        "video_url": "http://wanx.alicdn.com/material/20250318/video_outpainting_1.mp4"
    },
    "parameters": {
        "prompt_extend": false,
        "top_scale": 1.5,
        "bottom_scale": 1.5,
        "left_scale": 1.5,
        "right_scale": 1.5
    }
}'
ステップ 2:タスク ID に基づいて結果を取得{task_id} を、前の API 呼び出しで返された task_id の値に置き換えます。task_id は 24 時間クエリに対して有効です。
curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

画像とビデオの入力方法

入力画像

  • 画像数:選択した特徴に対応する数の画像を提供できます。
  • 入力方法:
    • パブリック URL:HTTP または HTTPS プロトコルをサポートします。例:https://xxxx/xxx.png。

入力ビデオ

  • ビデオ数:選択した特徴に対応する数のビデオを提供できます。
  • 入力方法:
    • パブリック URL:HTTP または HTTPS プロトコルをサポートします。例:https://xxxx/xxx.mp4。

出力ビデオ

  • ビデオ数:1。
  • ビデオ仕様:合計解像度は 720P に固定され、フレームレートは 30 fps、MP4 形式 (H.264 エンコーディング) です。
  • ビデオ URL の有効期間:24 時間。
  • ビデオのディメンション:選択した特徴によって異なります。
    • 複数画像参照 / 局所編集:
      • 出力解像度は 720P に固定されます。
      • 具体的な幅と高さは、size リクエストパラメーターによって決まります。
    • ビデオリペインティング / ビデオ拡張 / ビデオアウトペインティング:
      • 入力ビデオの解像度が 720P 以下の場合:出力は元の解像度を維持します。
      • 入力ビデオの解像度が 720P を超える場合:出力はアスペクト比を維持したまま 720P に縮小されます。

課金とレート制限

  • モデルの無料クォータと課金レートの詳細については、「モデルの料金」をご参照ください。
  • モデルのレート制限の詳細については、「Wanxiang シリーズ」をご参照ください。
  • 課金の説明:
    • 入力に対しては課金されません。課金は、正常に生成されたビデオの秒単位の持続時間に基づきます。
    • モデルの呼び出しの失敗や処理エラーは料金が発生せず、新規ユーザーの無料クォータも消費しません。
    • 汎用ビデオ編集は節約プランもサポートしています。

API ドキュメント

汎用ビデオ編集 API リファレンス

よくある質問

Q:複数画像参照機能は最大で何枚の画像をサポートしますか?

A:最大 3 枚の参照画像をサポートします。3 枚を超えて指定した場合、最初の 3 枚のみが入力として使用されます。主題をより際立たせるために、主題画像には単色のバックグラウンドを使用し、バックグラウンド画像には主題が含まれていないものを使用することを推奨します。

Q:ビデオリペインティングでプロンプトリライトを無効にするのはどのような場合ですか?

A:テキスト記述が入力ビデオの内容と一致しない場合、モデルが誤って解釈する可能性があります。prompt_extend=false を設定して手動でプロンプトリライトを無効にし、プロンプトでシーンを明確かつ具体的に記述して、生成の一貫性と精度を向上させることを推奨します。

Q:局所編集機能において、マスク画像とマスクビデオの違いは何ですか?

A: mask_image_url または mask_video_url のいずれかを指定する必要があります。 マスクイメージの使用を推奨します。 1 フレームの編集エリアを指定するだけで、システムが自動的にターゲットをトラックします。