All Products
Search
Document Center

Alibaba Cloud Model Studio:Wan - image-to-video - referensi API frame pertama (2.1-2.6)

Last Updated:Jun 04, 2026

Model image-to-video Wan menghasilkan video yang mulus dari gambar frame pertama dan prompt teks.

Dokumen terkait: Panduan pengguna

Catatan

Wan 2.7 - image-to-video mendukung first-frame-to-video, first-and-last-frame-to-video, dan kelanjutan video. Kami merekomendasikan versi ini.

Fitur image-to-video (berbasis frame pertama) untuk model Wan 2.6 dan sebelumnya hanya mendukung first-frame-to-video.

Ketersediaan

Model, URL endpoint, dan Kunci API Anda harus berada di wilayah yang sama. Pemanggilan lintas wilayah akan gagal.

Catatan

Kode contoh dalam topik ini ditujukan untuk wilayah Singapura.

Penting

Domain lama https://dashscope-intl.aliyuncs.com untuk wilayah Singapura akan segera ditinggalkan. Harap segera migrasi ke domain baru https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com.

Pemanggilan HTTP

Tugas image-to-video menggunakan pemanggilan asinkron (biasanya 1–5 menit): buat tugas → polling hasil.

Langkah 1: Buat tugas

Singapura

POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Ganti WorkspaceId dengan Workspace ID aktual Anda.

Virginia

POST https://dashscope-us.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Beijing

POST https://dashscope.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Frankfurt

POST https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis

Ganti WorkspaceId dengan workspace ID Anda.

Catatan
  • Setelah tugas dibuat, gunakan task_id yang dikembalikan untuk menanyakan hasilnya. task_id berlaku selama 24 jam. Jangan membuat tugas duplikat. Sebagai gantinya, gunakan polling untuk mengambil hasilnya.

  • Untuk panduan pemula, lihat Postman.

Parameter permintaan

Narasi multi-shot

Fitur ini hanya didukung oleh model seri Wan2.6.

Anda dapat mengaktifkannya dengan mengatur "prompt_extend": true dan "shot_type":"multi".

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan2.6-i2v-flash",
    "input": {
        "prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.",
        "img_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png",
        "audio_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3"
    },
    "parameters": {
        "resolution": "720P",
        "prompt_extend": true,
        "duration": 10,
        "shot_type":"multi"
    }
}'

Dubbing otomatis

Fitur ini hanya didukung oleh model seri Wan2.6 dan Wan2.5.

Jika Anda tidak memberikan input.audio_url, model secara otomatis menghasilkan musik latar atau efek suara yang sesuai berdasarkan konten video.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan2.5-i2v-preview",
    "input": {
        "prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.",
        "img_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png"
    },
    "parameters": {
        "resolution": "480P",
        "prompt_extend": true,
        "duration": 10
    }
}'

Audio kustom

Fitur ini hanya didukung oleh model seri Wan2.6 dan Wan2.5.

Untuk menentukan musik latar atau narasi suara untuk video, masukkan URL file audio kustom Anda dalam parameter input.audio_url.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan2.5-i2v-preview",
    "input": {
        "prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.",
        "img_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png",
        "audio_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3"
    },
    "parameters": {
        "resolution": "480P",
        "prompt_extend": true,
        "duration": 10
    }
}'

Video tanpa suara

Hanya model-model berikut yang mendukung pembuatan video tanpa suara:

  • wan2.6-i2v-flash: Untuk menghasilkan video tanpa suara, Anda harus secara eksplisit mengatur parameters.audio = false.

  • model seri wan2.2 dan wan2.1: Secara default menghasilkan video tanpa suara; tidak diperlukan parameter tambahan.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan2.2-i2v-plus",
    "input": {
        "prompt": "A cat running on the grass",
        "img_url": "https://cdn.translate.alibaba.com/r/wanx-demo-1.png"
    },
    "parameters": {
        "resolution": "480P",
        "prompt_extend": true
    }
}'

Negative prompt

Gunakan parameter negative_prompt untuk mencegah munculnya "flowers" dalam video yang dihasilkan.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan2.2-i2v-plus",
    "input": {
        "prompt": "A cat running on the grass",
        "negative_prompt": "flowers",
        "img_url": "https://cdn.translate.alibaba.com/r/wanx-demo-1.png"
    },
    "parameters": {
        "resolution": "480P",
        "prompt_extend": true
    }
}'
Header

Content-Type string (Wajib)

Tipe konten permintaan. Harus application/json.

Authorization string (Wajib)

Mengotentikasi permintaan dengan Kunci API Model Studio. Contoh: Bearer sk-xxxx.

X-DashScope-Async string (Wajib)

Mengaktifkan pemrosesan asinkron. Permintaan HTTP hanya mendukung pemanggilan asinkron. Harus enable.

Penting

Jika header permintaan ini tidak ada, kesalahan "current user api does not support synchronous calls" akan dikembalikan.

Body permintaan

model string (Wajib)

Nama model. Model yang tersedia dan harga: harga model.

Contoh: wan2.6-i2v-flash.

input object (Wajib)

Bidang input termasuk prompt.

Properti

prompt string (Opsional)

Menjelaskan elemen visual dan karakteristik yang diinginkan dari video yang dihasilkan.

Mendukung bahasa Tionghoa dan Inggris. Setiap karakter dihitung sebagai satu. Teks yang melebihi batas akan dipotong. Batas panjang berdasarkan model:

  • Model seri Wan2.6 dan Wan2.5: Maksimal 1.500 karakter.

  • Model seri wan2.2 dan wan2.1: Maksimal 800 karakter.

Contoh: Seekor anak kucing berlari di atas rumput.

Kiat penulisan prompt: Panduan Prompt Text-to-Video/Image-to-Video.

negative_prompt string (Opsional)

Menjelaskan apa yang harus dikecualikan dari video, sehingga membatasi output.

Mendukung bahasa Tionghoa dan Inggris. Maksimal 500 karakter; teks yang lebih panjang akan dipotong.

Contoh: resolusi rendah, kesalahan, kualitas terburuk, kualitas rendah, cacat, jari ekstra, proporsi buruk, dll.

img_url string (Wajib)

URL atau data Base64-encoded dari gambar awal.

Batasan gambar:

  • Format gambar: JPEG, JPG, PNG (saluran alfa tidak didukung), BMP, atau WEBP.

  • Resolusi gambar: Lebar dan tinggi harus berada dalam rentang [240, 8000] piksel.

  • Ukuran file:

    • Model seri Wan2.6 dan Wan2.5: Maksimal 20 MB.

    • Model seri wan2.2 dan wan2.1: Maksimal 10 MB.

Format input yang didukung:

  1. URL publik:

    • Mendukung protokol HTTP dan HTTPS.

    • Contoh: https://cdn.translate.alibaba.com/r/wanx-demo-1.png.

  2. String gambar Base64-encoded:

    • Format data: data:{MIME_type};base64,{base64_data}.

    • Contoh: data:image/png;base64,GDU7MtCZzEbTbmRZ...... (disingkat untuk kejelasan).

    • Untuk detailnya, lihat 万相2.6-图生视频-基于首帧.

audio_url string (Opsional)

Model yang didukung: Model seri Wan2.6 dan Wan2.5.

URL file audio. Model menghasilkan video menggunakan audio ini.

Format input yang didukung:

  1. URL publik:

    • Mendukung protokol HTTP dan HTTPS.

    • Contoh: https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/xxx.mp3.

Batasan audio:

  • Format: WAV, MP3.

  • Durasi: 3–30 detik.

  • Ukuran file: Maksimal 15 MB.

  • Penanganan di luar rentang: Jika durasi audio melebihi duration yang ditentukan (5 atau 10 detik), sistem secara otomatis memotong audio menjadi 5 atau 10 detik pertama, dan sisanya dibuang. Jika audio lebih pendek dari durasi video, video akan senyap setelah audio berakhir. Misalnya, jika audio berdurasi 3 detik dan durasi video 5 detik, 3 detik pertama video output akan memiliki suara, dan 2 detik terakhir akan senyap.

Contoh: https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3.

parameters object (Opsional)

Kontrol untuk resolusi, durasi, penulisan ulang prompt cerdas, dan watermark.

Properti

resolution string (Opsional)

Penting

Resolusi secara langsung memengaruhi biaya. Sebelum memanggil API, konfirmasi harga model.

Menentukan tingkat resolusi video output. Model menskalakan output ke jumlah piksel total yang serupa berdasarkan tingkat yang dipilih. Model mempertahankan rasio aspek output sedekat mungkin dengan rasio aspek gambar input di img_url. Untuk detailnya, lihat FAQ.

Nilai default dan nilai enum yang tersedia untuk parameter ini bergantung pada parameter model, sebagai berikut:

  • wan2.6-i2v-flash: Nilai valid: 720P, 1080P. Nilai default: 1080P.

  • wan2.6-i2v: Nilai valid: 720P, 1080P. Nilai default: 1080P.

  • wan2.6-i2v-us: Nilai valid: 720P, 1080P. Nilai default: 1080P.

  • wan2.5-i2v-preview: Nilai valid: 480P, 720P, 1080P. Nilai default: 1080P.

  • wan2.2-i2v-flash: Nilai valid: 480P, 720P. Nilai default: 720P.

  • wan2.2-i2v-plus: Nilai valid: 480P, 1080P. Nilai default: 1080P.

  • wan2.1-i2v-turbo: Nilai valid: 480P, 720P. Nilai default: 720P.

  • wan2.1-i2v-plus: Nilai valid: 720P. Nilai default: 720P.

Contoh: 1080P.

duration integer (Opsional)

Penting

Durasi secara langsung memengaruhi biaya. Sebelum memanggil API, konfirmasi harga model.

Durasi video output, dalam detik. Nilai valid bergantung pada parameter model:

  • wan2.6-i2v-flash: Bilangan bulat dalam [2, 15]. Default: 5.

  • wan2.6-i2v: Bilangan bulat dalam [2, 15]. Default: 5.

  • wan2.6-i2v-us: Nilai valid: 5, 10, 15. Default: 5.

  • wan2.5-i2v-preview: Nilai valid: 5, 10. Default: 5.

  • wan2.2-i2v-plus: Tetap 5 detik dan tidak dapat dimodifikasi.

  • wan2.2-i2v-flash: Tetap 5 detik dan tidak dapat dimodifikasi.

  • wan2.1-i2v-plus: Tetap 5 detik dan tidak dapat dimodifikasi.

  • wan2.1-i2v-turbo: Nilai valid: 3, 4, atau 5. Default: 5.

Contoh: 5.

prompt_extend boolean (Opsional)

Apakah akan mengaktifkan penulisan ulang prompt. Saat diaktifkan, LLM menulis ulang prompt input. Ini meningkatkan kualitas generasi untuk prompt yang lebih pendek tetapi meningkatkan waktu pemrosesan.

  • true (default)

  • false

Contoh: true.

shot_type string (Opsional)

Model yang didukung: Model seri Wan2.6.

Menentukan jenis shot video yang dihasilkan: satu shot berkelanjutan atau rangkaian beberapa shot.

Parameter ini hanya berlaku saat "prompt_extend": true.

Prioritas parameter: shot_type > prompt. Misalnya, jika shot_type diatur ke "single", meskipun prompt berisi "generate a multi-shot video", model tetap akan menghasilkan video single-shot.

Nilai valid:

  • single: Nilai default. Menghasilkan video single-shot.

  • multi: Menghasilkan video multi-shot.

Contoh: single.

Catatan

Gunakan parameter ini saat Anda memerlukan kontrol ketat atas struktur narasi, seperti single shot untuk demo produk atau multiple shots untuk film pendek.

audio boolean (Opsional)

Penting

Ini memengaruhi biaya. Video dengan suara dan video senyap memiliki harga berbeda. Periksa harga di Konsol Model Studio.

Model yang didukung: wan2.6-i2v-flash.

Menentukan apakah akan menghasilkan video dengan suara.

Prioritas parameter: audio > audio_url. Saat audio=false, output tetap berupa video senyap meskipun audio_url disediakan, dan penagihan berdasarkan video senyap.

Nilai valid:

  • true: Nilai default. Menghasilkan video dengan suara.

  • false: Menghasilkan video senyap.

Contoh: true.

watermark boolean (Opsional)

Menentukan apakah akan menambahkan watermark "AI Generated" di pojok kanan bawah video.

  • false: Nilai default. Tidak menambahkan watermark.

  • true: Menambahkan watermark.

Contoh: false.

seed integer (Opsional)

Bilangan acak seed. Rentang nilai: [0, 2147483647].

Jika tidak ditentukan, sistem menghasilkan satu. Untuk reproduktibilitas yang lebih baik, gunakan seed tetap.

Generasi bersifat probabilistik. Bahkan dengan seed yang sama, hasilnya mungkin berbeda.

Contoh: 12345.

Parameter respons

Respons berhasil

Simpan task_id untuk menanyakan status dan hasil tugas.

{
    "output": {
        "task_status": "PENDING",
        "task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
    },
    "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}

Respons kesalahan

Pembuatan tugas gagal. Lihat Kode kesalahan.

{
    "code": "InvalidApiKey",
    "message": "No API-key provided.",
    "request_id": "7438d53d-6eb8-4596-8835-xxxxxx"
}

output object

Informasi tentang output tugas.

Properti

task_id string

ID tugas. Berlaku untuk kueri selama 24 jam.

task_status string

Status tugas.

Nilai enumerasi

  • PENDING

  • RUNNING

  • SUCCEEDED

  • FAILED

  • CANCELED

  • UNKNOWN: Tugas tidak ada atau statusnya tidak diketahui.

request_id string

Identifier permintaan unik untuk pelacakan dan troubleshooting.

code string

Kode kesalahan. Hanya dikembalikan untuk permintaan yang gagal. Lihat Kode kesalahan.

message string

Pesan kesalahan detail. Hanya dikembalikan untuk permintaan yang gagal. Lihat Kode kesalahan.

Langkah 2: Tanyakan hasil tugas

Singapura

GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}

Ganti WorkspaceId dengan Workspace ID aktual Anda.

Virginia

GET https://dashscope-us.aliyuncs.com/api/v1/tasks/{task_id}

China (Beijing)

GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}

Frankfurt

GET https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/api/v1/tasks/{task_id}

Ganti WorkspaceId dengan Workspace ID Anda.

Catatan
  • Rekomendasi polling: Pembuatan video memerlukan beberapa menit. Gunakan mekanisme polling dengan interval yang wajar, misalnya 15 detik.

  • Transisi status tugas: PENDING → RUNNING → SUCCEEDED atau FAILED.

  • Tautan hasil: Setelah tugas berhasil, URL video yang berlaku selama 24 jam dikembalikan. Unduh dan simpan video ke penyimpanan permanen, seperti OSS.

  • task_id masa berlaku: 24 jam. Setelah periode ini, kueri akan mengembalikan status tugas sebagai UNKNOWN.

Parameter permintaan

Hasil tugas kueri

Ganti {task_id} dengan nilai task_id yang dikembalikan oleh pemanggilan API sebelumnya. task_id berlaku untuk kueri selama 24 jam.

curl -X GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"
Header

Authorization string (Wajib)

Mengotentikasi permintaan dengan Kunci API Model Studio. Contoh: Bearer sk-xxxx.

Parameter path

task_id string (Wajib)

ID tugas.

Parameter respons

Tugas berhasil

URL video hanya berlaku selama 24 jam, lalu secara otomatis dihapus. Segera simpan video yang dihasilkan.

{
    "request_id": "2ca1c497-f9e0-449d-9a3f-xxxxxx",
    "output": {
        "task_id": "af6efbc0-4bef-4194-8246-xxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2025-09-25 11:07:28.590",
        "scheduled_time": "2025-09-25 11:07:35.349",
        "end_time": "2025-09-25 11:17:11.650",
        "orig_prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.",
        "video_url": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.mp4?Expires=xxx"
    },
    "usage": {
        "duration": 10,
        "input_video_duration": 0,
        "output_video_duration": 10,
        "video_count": 1,
        "SR": 720
    }
}

Tugas gagal

Saat tugas gagal, task_status bernilai FAILED dengan kode dan pesan kesalahan. Lihat Kode kesalahan.

{
    "request_id": "e5d70b02-ebd3-98ce-9fe8-759d7d7b107d",
    "output": {
        "task_id": "86ecf553-d340-4e21-af6e-a0c6a421c010",
        "task_status": "FAILED",
        "code": "InvalidParameter",
        "message": "The size is not match xxxxxx"
    }
}

Kueri tugas kedaluwarsa

task_id berlaku selama 24 jam. Setelah periode ini, kueri akan mengembalikan kesalahan berikut.

{
    "request_id": "a4de7c32-7057-9f82-8581-xxxxxx",
    "output": {
        "task_id": "502a00b1-19d9-4839-a82f-xxxxxx",
        "task_status": "UNKNOWN"
    }
}

output object

Detail output tugas.

Properti

task_id string

ID tugas. Berlaku untuk kueri selama 24 jam.

task_status string

Status tugas.

Nilai enumerasi

  • PENDING

  • RUNNING

  • SUCCEEDED

  • FAILED

  • CANCELED

  • UNKNOWN: Tugas tidak ada atau statusnya tidak diketahui.

Transisi status selama polling:

  • PENDING → RUNNING → SUCCEEDED atau FAILED.

  • Status kueri awal biasanya PENDING atau RUNNING.

  • Saat status berubah menjadi SUCCEEDED, respons berisi URL video yang dihasilkan.

  • Jika statusnya FAILED, periksa pesan kesalahan dan coba ulang tugas.

submit_time string

Waktu saat tugas diajukan. Waktu dalam UTC+8 dan formatnya YYYY-MM-DD HH:mm:ss.SSS.

scheduled_time string

Waktu saat tugas dieksekusi. Waktu dalam UTC+8 dan formatnya YYYY-MM-DD HH:mm:ss.SSS.

end_time string

Waktu saat tugas selesai. Waktu dalam UTC+8 dan formatnya YYYY-MM-DD HH:mm:ss.SSS.

video_url string

URL video yang dihasilkan. Hanya dikembalikan saat task_status bernilai SUCCEEDED.

Berlaku selama 24 jam. Video dalam format MP4 dengan encoding H.264.

orig_prompt string

Prompt input asli, sesuai dengan parameter permintaan prompt.

actual_prompt string

Jika prompt_extend bernilai true, sistem menulis ulang prompt, dan bidang ini berisi versi yang dioptimalkan.

  • Jika prompt_extend=false, bidang ini tidak dikembalikan.

  • Catatan: Model wan2.6 tidak mengembalikan bidang ini, terlepas dari nilai prompt_extend.

code string

Kode kesalahan. Hanya dikembalikan untuk permintaan yang gagal. Lihat Kode kesalahan.

message string

Pesan kesalahan detail. Hanya dikembalikan untuk permintaan yang gagal. Lihat Kode kesalahan.

usage object

Statistik penggunaan tugas, yang hanya dihitung untuk tugas yang berhasil.

Properti

Parameter yang dikembalikan oleh model seri wan2.6

input_video_duration integer

Durasi video input dalam detik. Nilai ini selalu 0, karena input video saat ini tidak didukung.

output_video_duration integer

Hanya dikembalikan saat menggunakan model wan2.6.

Durasi video output dalam detik. Nilai ini sesuai dengan input.duration.

duration integer

Total durasi video, digunakan untuk penagihan.

Rumus penagihan: duration=input_video_duration+output_video_duration.

SR integer

Hanya dikembalikan saat menggunakan model wan2.6. Tingkat resolusi video yang dihasilkan. Contoh: 720.

video_count integer

Jumlah video yang dihasilkan. Nilai ini tetap 1.

audioboolean

Hanya dikembalikan saat menggunakan model wan2.6-i2v-flash. Menunjukkan apakah output berupa video dengan audio.

Parameter yang dikembalikan oleh model seri wan2.2 dan wan2.5

duration integer

Durasi video yang dihasilkan dalam detik. Nilai yang mungkin: 5, 10.

Rumus penagihan: Biaya = Durasi video dalam detik × Harga satuan.

SR integer

Resolusi video yang dihasilkan. Nilai yang mungkin: 480, 720, 1080.

video_count integer

Jumlah video yang dihasilkan. Nilai ini tetap 1.

Parameter yang dikembalikan oleh model seri wan2.1

video_duration integer

Durasi video yang dihasilkan dalam detik. Nilai yang mungkin: 3, 4, 5.

Rumus penagihan: Biaya = Durasi video dalam detik × Harga satuan.

video_ratio string

Rasio aspek video yang dihasilkan. Nilai ini selalu "standard".

video_count integer

Jumlah video yang dihasilkan. Nilai ini tetap 1.

request_id string

Identifier permintaan unik untuk pelacakan dan troubleshooting.

Pemanggilan SDK DashScope

Nama parameter SDK sebagian besar konsisten dengan API HTTP, mengikuti konvensi masing-masing bahasa.

Tugas image-to-video biasanya memerlukan waktu 1–5 menit. SDK membungkus proses pemanggilan HTTP asinkron dan mendukung pemanggilan sinkron maupun asinkron.

Waktu pemrosesan tergantung pada antrian tugas dan status layanan.

SDK Python

Penting

Pastikan versi SDK Python DashScope Anda minimal 1.25.8 sebelum menjalankan kode berikut.

Versi lama mungkin memicu kesalahan seperti "url error, please check url!". Untuk memperbarui, lihat Instal SDK.

Atur base_http_api_url sesuai wilayah model:

Singapura

dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

Ganti WorkspaceId dengan Workspace ID aktual Anda.

Virginia

dashscope.base_http_api_url = 'https://dashscope-us.aliyuncs.com/api/v1'

Beijing

dashscope.base_http_api_url = 'https://dashscope.aliyuncs.com/api/v1'

Frankfurt

dashscope.base_http_api_url = 'https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/api/v1'

Saat melakukan pemanggilan, ganti WorkspaceId dengan Workspace ID aktual Anda.

Kode contoh

Pemanggilan sinkron

Pemanggilan sinkron memblokir hingga pembuatan video selesai. Contoh ini menunjukkan tiga metode input gambar: URL publik, encoding Base64, dan jalur file lokal.

Contoh permintaan
import base64
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import mimetypes
import dashscope

# URL berikut untuk wilayah Singapura. Ganti WorkspaceId dengan workspace ID aktual Anda. URL berbeda-beda berdasarkan wilayah.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'


# Jika variabel lingkungan tidak diatur, ganti baris berikut dengan Kunci API Anda dari Model Studio: api_key="sk-xxx"
# Dapatkan Kunci API Anda: https://www.alibabacloud.com/help/en/model-studio/get-api-key
api_key = os.getenv("DASHSCOPE_API_KEY")

# --- Fungsi bantu untuk encoding Base64 ---
# Format: data:{MIME_type};base64,{base64_data}
def encode_file(file_path):
    mime_type, _ = mimetypes.guess_type(file_path)
    if not mime_type or not mime_type.startswith("image/"):
        raise ValueError("Format gambar tidak didukung atau tidak dikenali")
    with open(file_path, "rb") as image_file:
        encoded_string = base64.b64encode(image_file.read()).decode('utf-8')
    return f"data:{mime_type};base64,{encoded_string}"

"""
Metode input gambar:
Berikut adalah tiga cara untuk menyediakan gambar. Pilih salah satu.

1. URL publik: Ideal untuk gambar yang sudah dapat diakses publik.
2. File lokal: Cocok untuk pengembangan dan pengujian lokal.
3. Encoding Base64: Terbaik untuk gambar pribadi atau saat data harus ditransmisikan secara aman.
"""

# [Metode 1] Gunakan URL gambar yang dapat diakses publik
# Contoh: Gunakan URL gambar publik
img_url = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png"

# [Metode 2] Gunakan file lokal (mendukung jalur absolut dan relatif)
# Format: file:// + jalur file
# Contoh (jalur absolut):
# img_url = "file://" + "/path/to/your/img.png"    # Linux/macOS
# img_url = "file://" + "C:/path/to/your/img.png"  # Windows
# Contoh (jalur relatif):
# img_url = "file://" + "./img.png"                # Relatif terhadap direktori skrip saat ini

# [Metode 3] Gunakan gambar Base64-encoded
# img_url = encode_file("./img.png")

# Atur URL audio
audio_url = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3"

def sample_call_i2v():
    # Pemanggilan sinkron mengembalikan hasil secara langsung.
    print('please wait...')
    rsp = VideoSynthesis.call(api_key=api_key,
                              model='wan2.6-i2v-flash',
                              prompt='A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.',
                              img_url=img_url,
                              audio_url=audio_url,
                              resolution="720P",
                              duration=10,
                              prompt_extend=True,
                              watermark=False,
                              negative_prompt="",
                              seed=12345)
    print(rsp)
    if rsp.status_code == HTTPStatus.OK:
        print("video_url:", rsp.output.video_url)
    else:
        print('Failed, status_code: %s, code: %s, message: %s' %
              (rsp.status_code, rsp.code, rsp.message))


if __name__ == '__main__':
    sample_call_i2v()
Contoh respons
video_url berlaku selama 24 jam. Unduh video sebelum kedaluwarsa.
{
    "status_code": 200,
    "request_id": "2794c7a3-fe8c-4dd4-a1b7-xxxxxx",
    "code": null,
    "message": "",
    "output": {
        "task_id": "c15d5b14-07c4-4af5-b862-xxxxxx",
        "task_status": "SUCCEEDED",
        "video_url": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxx.mp4?Expires=xxx",
        "submit_time": "2026-01-22 23:24:46.527",
        "scheduled_time": "2026-01-22 23:24:46.565",
        "end_time": "2026-01-22 23:25:59.978",
        "orig_prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise."
    },
    "usage": {
        "video_count": 1,
        "video_duration": 0,
        "video_ratio": "",
        "duration": 10,
        "input_video_duration": 0,
        "output_video_duration": 10,
        "audio": true,
        "SR": 720
    }
}

Pemanggilan asinkron

Pemanggilan asinkron segera mengembalikan ID tugas. Anda kemudian melakukan polling untuk hasil atau menunggu hingga selesai.

Contoh permintaan
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

# URL berikut untuk wilayah Singapura. Ganti WorkspaceId dengan workspace ID aktual Anda. URL berbeda-beda berdasarkan wilayah.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'


# Jika variabel lingkungan tidak diatur, ganti baris berikut dengan Kunci API Anda dari Model Studio: api_key="sk-xxx"
# Dapatkan Kunci API Anda: https://www.alibabacloud.com/help/en/model-studio/get-api-key
api_key = os.getenv("DASHSCOPE_API_KEY")

# Gunakan URL gambar yang dapat diakses publik
img_url = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png"

# Atur URL audio
audio_url = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3"


def sample_async_call_i2v():
    # Pemanggilan asinkron, mengembalikan ID tugas
    rsp = VideoSynthesis.async_call(api_key=api_key,
                                    model='wan2.6-i2v-flash',
                                    prompt='A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.',
                                    img_url=img_url,
                                    audio_url=audio_url,
                                    resolution="720P",
                                    duration=10,
                                    prompt_extend=True,
                                    watermark=False,
                                    negative_prompt="",
                                    seed=12345)
    print(rsp)
    if rsp.status_code == HTTPStatus.OK:
        print("task_id: %s" % rsp.output.task_id)
    else:
        print('Failed, status_code: %s, code: %s, message: %s' %
              (rsp.status_code, rsp.code, rsp.message))

    # Dapatkan status tugas asinkron
    status = VideoSynthesis.fetch(task=rsp, api_key=api_key)
    if status.status_code == HTTPStatus.OK:
        print(status.output.task_status)
    else:
        print('Failed, status_code: %s, code: %s, message: %s' %
              (status.status_code, status.code, status.message))

    # Tunggu hingga tugas asinkron selesai
    rsp = VideoSynthesis.wait(task=rsp, api_key=api_key)
    print(rsp)
    if rsp.status_code == HTTPStatus.OK:
        print(rsp.output.video_url)
    else:
        print('Failed, status_code: %s, code: %s, message: %s' %
              (rsp.status_code, rsp.code, rsp.message))


if __name__ == '__main__':
    sample_async_call_i2v()
Contoh respons

1. Respons pembuatan tugas

{
    "status_code": 200,
    "request_id": "6dc3bf6c-be18-9268-9c27-xxxxxx",
    "code": "",
    "message": "",
    "output": {
        "task_id": "686391d9-7ecf-4290-a8e9-xxxxxx",
        "task_status": "PENDING",
        "video_url": ""
    },
    "usage": null
}

2. Respons kueri tugas

video_url berlaku selama 24 jam. Unduh video sebelum kedaluwarsa.
{
    "status_code": 200,
    "request_id": "2794c7a3-fe8c-4dd4-a1b7-xxxxxx",
    "code": null,
    "message": "",
    "output": {
        "task_id": "c15d5b14-07c4-4af5-b862-xxxxxx",
        "task_status": "SUCCEEDED",
        "video_url": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxx.mp4?Expires=xxx",
        "submit_time": "2026-01-22 23:24:46.527",
        "scheduled_time": "2026-01-22 23:24:46.565",
        "end_time": "2026-01-22 23:25:59.978",
        "orig_prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise."
    },
    "usage": {
        "video_count": 1,
        "video_duration": 0,
        "video_ratio": "",
        "duration": 10,
        "input_video_duration": 0,
        "output_video_duration": 10,
        "audio": true,
        "SR": 720
    }
}

SDK Java

Penting

Pastikan versi SDK Java DashScope Anda minimal 2.22.6 sebelum menjalankan kode berikut.

Versi lama mungkin memicu kesalahan seperti "url error, please check url!". Untuk memperbarui, lihat Instal SDK.

Atur baseHttpApiUrl sesuai wilayah model:

Singapura

Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";

Ganti WorkspaceId dengan Workspace ID aktual Anda.

Virginia

Constants.baseHttpApiUrl = "https://dashscope-us.aliyuncs.com/api/v1";

Beijing

Constants.baseHttpApiUrl = "https://dashscope.aliyuncs.com/api/v1";

Frankfurt

Constants.baseHttpApiUrl = "https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/api/v1";

Saat melakukan pemanggilan, ganti WorkspaceId dengan Workspace ID aktual Anda.

Kode contoh

Pemanggilan sinkron

Pemanggilan sinkron memblokir hingga pembuatan video selesai. Contoh ini menunjukkan tiga metode input gambar: URL publik, encoding Base64, dan jalur file lokal.

Contoh permintaan
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesis;
import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesisParam;
import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesisResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
import com.alibaba.dashscope.utils.Constants;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Base64;
import java.util.HashMap;
import java.util.Map;

 
public class Image2Video {

    static {
        // Atur endpoint. Contoh ini menggunakan wilayah Singapura. Untuk wilayah lain, lihat: https://www.alibabacloud.com/help/en/model-studio/image-to-video-api-reference
        Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
    }

    // Jika variabel lingkungan tidak diatur, ganti baris berikut dengan Kunci API Anda dari Model Studio: apiKey="sk-xxx"
    // Dapatkan Kunci API Anda: https://www.alibabacloud.com/help/en/model-studio/get-api-key
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");
    
    /**
     * Metode input gambar: Pilih salah satu dari tiga berikut.
     *
     * 1. URL publik: Ideal untuk gambar yang sudah dapat diakses publik.
     * 2. File lokal: Cocok untuk pengembangan dan pengujian lokal.
     * 3. Encoding Base64: Terbaik untuk gambar pribadi atau saat data harus ditransmisikan secara aman.
     */

    // [Metode 1] URL publik
    static String imgUrl = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png";

    // [Metode 2] Jalur file lokal (file:// + jalur absolut)
    // static String imgUrl = "file://" + "/your/path/to/img.png";    // Linux/macOS
    // static String imgUrl = "file://" + "C:/your/path/to/img.png";  // Windows

    // [Metode 3] Encoding Base64
    // static String imgUrl = Image2Video.encodeFile("/your/path/to/img.png");
    
    // Atur URL audio
    static String audioUrl = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3";

    public static void image2video() throws ApiException, NoApiKeyException, InputRequiredException {
        // Atur parameter
        Map<String, Object> parameters = new HashMap<>();
        parameters.put("prompt_extend", true);
        parameters.put("watermark", false);
        parameters.put("seed", 12345);

        VideoSynthesis vs = new VideoSynthesis();
        VideoSynthesisParam param =
                VideoSynthesisParam.builder()
                        .apiKey(apiKey)
                        .model("wan2.6-i2v-flash")
                        .prompt("A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.")
                        .imgUrl(imgUrl)
                        .audioUrl(audioUrl)
                        .duration(10)
                        .parameters(parameters)
                        .resolution("720P")
                        .negativePrompt("")
                        .build();
        System.out.println("please wait...");
        VideoSynthesisResult result = vs.call(param);
        System.out.println(JsonUtils.toJson(result));
    }
    
     /**
     * Meng-encode file menjadi string Base64.
     * @param filePath Jalur file.
     * @return String Base64 dalam format data:{MIME_type};base64,{base64_data}.
     */
    public static String encodeFile(String filePath) {
        Path path = Paths.get(filePath);
        if (!Files.exists(path)) {
            throw new IllegalArgumentException("File does not exist: " + filePath);
        }
        // Deteksi tipe MIME
        String mimeType = null;
        try {
            mimeType = Files.probeContentType(path);
        } catch (IOException e) {
            throw new IllegalArgumentException("Cannot detect file type: " + filePath);
        }
        if (mimeType == null || !mimeType.startsWith("image/")) {
            throw new IllegalArgumentException("Unsupported or unrecognized image format");
        }
        // Baca konten file dan encode
        byte[] fileBytes = null;
        try{
            fileBytes = Files.readAllBytes(path);
        } catch (IOException e) {
            throw new IllegalArgumentException("Cannot read file content: " + filePath);
        }
    
        String encodedString = Base64.getEncoder().encodeToString(fileBytes);
        return "data:" + mimeType + ";base64," + encodedString;
    }
    

    public static void main(String[] args) {
        try {
            image2video();
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}
Contoh respons
video_url berlaku selama 24 jam. Unduh video sebelum kedaluwarsa.
{
    "request_id": "87c091bb-7a3c-4904-8501-xxxxxx",
    "output": {
        "task_id": "413ed6e4-5f3a-4f57-8d58-xxxxxx",
        "task_status": "SUCCEEDED",
        "video_url": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxx.mp4?Expires=xxx",
        "orig_prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.",
        "submit_time": "2026-01-22 23:25:45.729",
        "scheduled_time": "2026-01-22 23:25:45.771",
        "end_time": "2026-01-22 23:26:44.942"
    },
    "usage": {
        "video_count": 1,
        "duration": 10.0,
        "input_video_duration": 0.0,
        "output_video_duration": 10.0,
        "SR": "720"
    },
    "status_code": 200,
    "code": "",
    "message": ""
}

Pemanggilan asinkron

Pemanggilan asinkron segera mengembalikan ID tugas. Anda kemudian melakukan polling untuk hasil atau menunggu hingga selesai.

Contoh permintaan
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesis;
import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesisListResult;
import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesisParam;
import com.alibaba.dashscope.aigc.videosynthesis.VideoSynthesisResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.task.AsyncTaskListParam;
import com.alibaba.dashscope.utils.JsonUtils;
import com.alibaba.dashscope.utils.Constants;

import java.util.HashMap;
import java.util.Map;

public class Image2Video {

    static {
        // Atur endpoint. Contoh ini menggunakan wilayah Singapura. Untuk wilayah lain, lihat: https://www.alibabacloud.com/help/en/model-studio/image-to-video-api-reference
        Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
    }

    // Jika variabel lingkungan tidak diatur, ganti baris berikut dengan Kunci API Anda dari Model Studio: apiKey="sk-xxx"
    // Dapatkan Kunci API Anda: https://www.alibabacloud.com/help/en/model-studio/get-api-key
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");
    // Atur URL gambar input
    static String imgUrl = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png";

    // Atur URL audio
    static String audioUrl = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/ozwpvi/rap.mp3";

    public static void image2video() throws ApiException, NoApiKeyException, InputRequiredException {
        // Atur parameter
        Map<String, Object> parameters = new HashMap<>();
        parameters.put("prompt_extend", true);
        parameters.put("watermark", false);
        parameters.put("seed", 12345);

        VideoSynthesis vs = new VideoSynthesis();
        VideoSynthesisParam param =
                VideoSynthesisParam.builder()
                        .apiKey(apiKey)
                        .model("wan2.6-i2v-flash")
                        .prompt("A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.")
                        .imgUrl(imgUrl)
                        .audioUrl(audioUrl)
                        .duration(10)
                        .parameters(parameters)
                        .resolution("720P")
                        .negativePrompt("")
                        .build();
        // Pemanggilan asinkron
        VideoSynthesisResult task = vs.asyncCall(param);
        System.out.println(JsonUtils.toJson(task));
        System.out.println("please wait...");

        // Dapatkan hasil
        VideoSynthesisResult result = vs.wait(task, apiKey);
        System.out.println(JsonUtils.toJson(result));
    }

    // Dapatkan daftar tugas
    public static void listTask() throws ApiException, NoApiKeyException {
        VideoSynthesis is = new VideoSynthesis();
        AsyncTaskListParam param = AsyncTaskListParam.builder().build();
        param.setApiKey(apiKey);
        VideoSynthesisListResult result = is.list(param);
        System.out.println(result);
    }

    // Dapatkan hasil satu tugas
    public static void fetchTask(String taskId) throws ApiException, NoApiKeyException {
        VideoSynthesis is = new VideoSynthesis();
        // Jika DASHSCOPE_API_KEY diatur sebagai variabel lingkungan, apiKey bisa null.
        VideoSynthesisResult result = is.fetch(taskId, apiKey);
        System.out.println(result.getOutput());
        System.out.println(result.getUsage());
    }

    public static void main(String[] args) {
        try {
            image2video();
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}
Contoh respons

1. Respons pembuatan tugas

{
    "request_id": "5dbf9dc5-4f4c-9605-85ea-xxxxxxxx",
    "output": {
        "task_id": "7277e20e-aa01-4709-xxxxxxxx",
        "task_status": "PENDING"
    }
}

2. Respons kueri tugas

video_url berlaku selama 24 jam. Unduh video sebelum kedaluwarsa.
{
    "request_id": "87c091bb-7a3c-4904-8501-xxxxxx",
    "output": {
        "task_id": "413ed6e4-5f3a-4f57-8d58-xxxxxx",
        "task_status": "SUCCEEDED",
        "video_url": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxx.mp4?Expires=xxx",
        "orig_prompt": "A scene of urban fantasy art. A dynamic graffiti art character. A boy made of spray paint comes to life from a concrete wall. He raps an English song at high speed while striking a classic, energetic rapper pose. The scene is set under an urban railway bridge at night. The lighting comes from a single street lamp, creating a cinematic atmosphere full of high energy and amazing detail. The audio of the video consists entirely of his rap, with no other dialogue or noise.",
        "submit_time": "2026-01-22 23:25:45.729",
        "scheduled_time": "2026-01-22 23:25:45.771",
        "end_time": "2026-01-22 23:26:44.942"
    },
    "usage": {
        "video_count": 1,
        "duration": 10.0,
        "input_video_duration": 0.0,
        "output_video_duration": 10.0,
        "SR": "720"
    },
    "status_code": 200,
    "code": "",
    "message": ""
}

Batasan

  • Retensi data: task_id dan URL video disimpan selama 24 jam. Setelah periode ini, Anda tidak dapat menanyakan atau mengunduhnya.

  • Moderasi konten: Semua input (prompt, gambar) dan video output tunduk pada moderasi konten. Pelanggaran menghasilkan kesalahan IPInfringementSuspect atau DataInspectionFailed. Kode kesalahan.

Kode kesalahan

Jika pemanggilan model mengembalikan pesan kesalahan, lihat Kode kesalahan.

FAQ

T: Bagaimana cara menghasilkan video dengan rasio aspek tertentu?

J: Gambar frame pertama input (img_url) menentukan rasio aspek video output. Namun, rasio tepat seperti 3:4 tidak dijamin, karena kemungkinan terjadi penyimpangan kecil.

  • Mengapa terjadi penyimpangan?

    Model menggunakan rasio aspek gambar input sebagai garis dasar dan menggabungkannya dengan jumlah piksel total dari tingkat resolusi yang dipilih (resolution) untuk menghitung resolusi valid terdekat. Karena lebar dan tinggi video harus merupakan kelipatan 16, model menyesuaikan resolusi akhir sesuai. Akibatnya, rasio aspek output tidak dijamin tepat 3:4, tetapi akan sangat dekat.

    • Misalnya, gambar input 750×1000 (rasio aspek 3:4 = 0,75) dengan resolution diatur ke "720P" (target sekitar 920.000 piksel total) menghasilkan output 816×1104 (rasio aspek ≈ 0,739, sekitar 900.000 piksel total).

  • Rekomendasi:

    • Kontrol input: Untuk hasil terbaik, gunakan gambar frame pertama yang sudah memiliki rasio aspek target Anda.

    • Pasca-pemrosesan: Jika Anda memerlukan rasio aspek ketat, potong video atau tambahkan bilah hitam menggunakan alat pengeditan setelah generasi.

T: Bagaimana cara mendapatkan daftar izin domain penyimpanan video?

J: Video yang dihasilkan model disimpan di OSS. API mengembalikan URL publik sementara. Untuk mengonfigurasi daftar putih firewall untuk URL unduhan ini, perhatikan hal berikut: Penyimpanan dasar dapat berubah secara dinamis. Topik ini tidak menyediakan daftar nama domain OSS tetap untuk mencegah masalah akses akibat informasi usang. Jika Anda memiliki persyaratan kontrol keamanan, hubungi manajer akun Anda untuk mendapatkan daftar nama domain OSS terbaru.