Seri wan3.0 merupakan model pembuatan video All-in-One dengan peningkatan menyeluruh pada pembuatan audio-video, referensi multimodal, dan pengeditan video. Mendukung hingga 30 detik per pembuatan dengan 30 fps, menghasilkan dialog, BGM, dan efek suara secara native, menerima hingga 20 materi referensi multimodal (gambar, video, audio, dokumen, halaman web) per permintaan, serta mendukung kontrol frame pertama/pertama-terakhir, pengeditan, dan perpanjangan video.
Untuk penulisan prompt, lihat Panduan Prompt Pembuatan Video wan3.0.
Cakupan
- Model yang didukung berbeda menurut wilayah, dan resource tiap wilayah berdiri sendiri. Lihat model yang tersedia di konsol Model Studio.
- Sebelum memanggil, dapatkan dan konfigurasikan API Key, lalu atur sebagai variabel lingkungan. Saat memanggil, ganti
{WorkspaceId}dengan ID workspace Anda. - Pastikan model, URL endpoint, dan API Key berasal dari wilayah yang sama. Panggilan lintas wilayah akan gagal.
CatatanContoh kode berlaku untuk wilayah Singapura.
Kemampuan model
wan3.0-video / wan3.0-video-prime adalah model All-in-One yang mencakup semua jenis tugas berikut tanpa mengganti nama model. Model merutekan otomatis berdasarkan kolom type pada input.media dan maksud prompt.
CatatanSetiap jenis tugas hanya mendukung nilai type pada tabel berikut. Nilai type dari jenis tugas berbeda tidak dapat dicampur. Misalnya, mode frame pertama-terakhir hanya menerima first_frame dan last_frame, tidak dapat sekaligus menerima reference_audio atau jenis lainnya. Lihat Kombinasi materi untuk aturan lengkap.
Jenis tugas | Cara memicu | Catatan penggunaan | |
|---|---|---|---|
Teks ke video | Hanya berikan | Mendukung pengaturan bebas resolusi, rasio aspek, dan durasi | |
Gambar ke video | Frame pertama ke video | Atur | Disarankan mengatur |
Frame pertama dan terakhir ke video | Atur | Disarankan mengatur | |
Referensi multimodal | Referensi gambar | Atur | Maksimal 10 gambar, masing-masing ≤20 MB |
Referensi video | Atur | Maksimal 5 klip, durasi total ≤15 detik, tiap file ≤100 MB | |
Referensi audio | Atur | Maksimal 5 klip, durasi total ≤15 detik, tiap file ≤15 MB | |
Referensi gabungan | Atur | Referensi gambar/video/audio; mendukung kombinasi bebas ketiga jenis materi
| |
Referensi file/halaman web ke video | Atur | Mengurai isi dokumen/halaman web untuk membuat video Dokumen dan tautan web harus dapat diakses publik tanpa login | |
Pengeditan video | Atur | Tambah/hapus/ubah elemen, konversi gaya, edit pencahayaan dan dialog. Disarankan | |
Perpanjangan video | Atur | Perpanjang sebelum/sesudah/kedua arah. Disarankan | |
Tips prompt
Platform menyediakan Skill optimasi prompt Wan 3.0 untuk membantu menyempurnakan prompt.
Unduh Skill: wan3-pe.zip (ekstrak setelah diunduh)
Penggunaan: Dalam kotak chat AI, masukkan /wan3-pe diikuti prompt untuk mulai menyempurnakannya. Contoh:
/wan3-pe Refine the prompt based on the Skill. Prompt: A cat running on the grass.
Fitur utama
Teks ke video
Buat video hanya dengan prompt, tanpa input media. Mendukung narasi multi-shot hingga 30 detik secara native dengan dialog, BGM, dan efek suara tersinkronisasi yang dibuat otomatis.
- Mendukung format storyboard satu atau beberapa shot (4~6 detik per shot, dengan anotasi timestamp).
- Audio-video: Menghasilkan dialog suara, efek suara lingkungan, dan musik latar secara native tanpa dubbing pascaproduksi.
- Durasi cerdas: Jika
durationdiatur ke-1, model otomatis merekomendasikan durasi yang sesuai.
Konfigurasi parameter: resolution=480P/720P/1080P (default), ratio=21:9/16:9/4:3/1:1/3:4/9:16, duration=2~30 detik atau -1 (durasi cerdas).
Contoh prompt 2
Sinopsis cerita
Insiden “mengisi bahan bakar” penuh humor datar dan absurditas di tanah tandus masa depan yang berwarna cerah. Di SPBU terlupakan mirip Route 66, petugas bosan kedatangan tamu aneh: cowgirl keren menunggang kuda sungguhan. Saat petugas mengira ia hanya orang gila yang lewat, cowgirl langsung menuju pompa, mengambil nosel, dan “mengisi penuh” kudanya dengan rumput segar. Adegan surealis ini membuat petugas berpengalaman mengalami disonansi kognitif total.
Deskripsi adegan dan estetika pencahayaan
Gaya visual: Realistis, dengan color grading sinematik bersaturasi dan kecerahan tinggi, menciptakan suasana “cerah” agar cerita absurd berlangsung di lingkungan yang sangat normal, bahkan menyenangkan.
Estetika warna: Ikuti secara ketat palet “teal-oranye” yang cerah.
Teal: Langit tanpa awan berwarna biru azur cerah dan jernih, sedikit teal. Bangunan utama SPBU memakai palet kuning-oranye-biru vintage yang agak pudar. Pompa bensin berwarna merah vintage pudar.
Oranye: Tanah kering retak berwarna oranye. Pegunungan jauh bernuansa terakota hangat. Syal atau jaket cowgirl berwarna oranye.
Karakter dan lokasi:
Cowgirl: Keren dan pendiam, memakai topi koboi bertepi lebar, sepatu kerja tahan lama, dan jeans. Pakaiannya berdebu akibat perjalanan panjang.
Kuda: Kuda sungguhan yang tenang dengan warna bulu biasa, seolah sudah lama terbiasa dengan semua ini.
Petugas SPBU: Memakai overall biru berminyak dan kacamata hitam besar, bersandar malas di kursi sambil menggigit tusuk gigi. Ia menjadi pusat shot reaksi dalam film.
SPBU: Gaya klasik Route 66, toko kecil di sampingnya, mesin penjual Coke pudar di pintu masuk, penuh pesona retro Amerika.
- Deskripsi gaya gerak kamera
Gaya kamera adalah “Pengamatan Tenang & Close-up Absurd”:
Banyak menggunakan medium shot statis dan tracking lateral lambat, merekam kejadian dari sudut pandang tenang dan objektif tanpa pengarahan emosi.
Pada momen absurditas utama, potong mendadak ke extreme close-up—rumput menyembur dari nosel atau wajah tertegun petugas—untuk menciptakan humor melalui pembesaran tiba-tiba.
- Deskripsi per shot
0–8 detik: Prolog — Sore yang Membosankan
Wide establishing shot statis. Langit biru, angin, dan debu. SPBU vintage kuning-oranye-biru yang agak pudar berdiri sendiri di tepi jalan. Di pintu masuk, petugas berkacamata hitam tertidur malas di kursi. Begitu sunyi, hanya angin terdengar.
Long shot. Di cakrawala, cowgirl menunggang kuda perlahan muncul, memecah kesunyian.
Medium shot. Petugas terbangun oleh suara kuku kuda, membetulkan kacamata, lalu duduk dengan kesal menatap pasangan aneh itu. Tusuk giginya bergerak; wajahnya berkata, “orang lain yang menanyakan arah”.
8–16 detik: Perkembangan — Kekonyolan yang Sangat Serius
Cowgirl tidak berkata apa-apa. Ia turun dengan gesit, menuntun kuda langsung ke pompa tua. Kuda dengan terampil menjulurkan kepala ke pompa.
POV petugas, sedikit fish-eye: Kamera meniru pandangan dari balik kacamata, membuat pasangan perempuan dan kuda makin aneh. Ia melihat cowgirl benar-benar mengambil nosel.
Close-up. Petugas mengerutkan dahi, mengira perempuan itu mempermainkannya. Ia melepas kacamata, hendak berteriak.
Close-up gerak lambat: Saat melepas kacamata, ia melihat cowgirl mengarahkan nosel ke mulut kuda dan menarik pemicunya.
16–24 detik: Klimaks — Momen Keruntuhan Kognitif
[Kontras Puncak]:
Close-up: Dari nosel, bukan bensin, melainkan aliran rumput hijau segar berembun menyembur!
Extreme close-up: Potong cepat ke wajah tercengang petugas. Matanya melebar, mulut sedikit terbuka, tusuk gigi membeku. Ekspresinya kaku seolah seluruh pandangan dunianya hancur dalam satu detik.
Medium shot. Kuda mengunyah gembira, menyipitkan mata puas, lalu mengibaskan ekor kuat. Debu yang terangkat mengenai wajah petugas yang masih terpana di sampingnya.
24–30 detik: Penyelesaian — Debu Tertiup Angin, Hanya Ketakjuban Tersisa
Rumput sudah “penuh”. Cowgirl menggantung nosel, mengambil beberapa koin dari saku, berjalan ke pintu toko, lalu menjatuhkannya berdenting ke kaleng di konter.
Ia menoleh pada petugas yang masih membatu; sudut bibir di bawah tepi topinya sedikit terangkat.
[Bingkai Beku Puncak]: Ia naik kuda dan pergi ke kejauhan.
Kamera perlahan mendekati petugas. Ia tetap tercengang, wajah berdebu, masih menggenggam kacamata, sampai tusuk gigi akhirnya jatuh dari mulutnya dengan bunyi klik.
Bekukan wajahnya yang mengalami krisis eksistensial. Film berakhir dalam kesunyian absurd, hanya suara tusuk gigi bergulir di tanah tertiup angin.
Contoh prompt 3
Film pendek animasi 3D, 30 detik, fantasi gelap, satu shot, interior bata batu remang. Pria dingin sangat tampan bermata ungu, rambut biru tinta acak dengan sorotan perak, tanduk kristal gelap, kulit pucat dingin, serta rune sihir astral ungu tua menutupi dahi dan pelipis. Ia memakai mantel panjang kerah tegak brokat biru malam kutub di atas kemeja sutra hitam, dengan ear cuff perak gelap berametis di telinga kiri.
Adegan: Cahaya bulan putih dingin malam hari sebagai key light keras dominan, pencahayaan low-key berkontras tinggi dari depan-samping. Dua sosok kabur dan api kuning hangat berkelip di latar, dengan partikel debu biru halus melayang.
Kamera: Medium close-up sedikit dari atas, depth of field dangkal terkunci pada sosok kiri, perlahan tilt ke atas hingga sejajar mata selama monolog.
Aksi: Pria berdiri menyamping, menunduk dengan senyum meremehkan, melirik telapak tangan lalu menghadap kamera, mengangkat kepala dan berkata dengan suara dingin memikat: “Ripe enough for the void.” Tangan kirinya terbuka dengan lima jari merentang, pusaran nebula bayangan gelap berkumpul di telapak, lalu berkata: “Your soul, a mere spark for me to extinguish.” Ia mendadak mengepalkan tangan; nebula meledak dan menghilang menjadi kabut ungu tua serta pecahan bintang biru halus. Terakhir ia tersenyum kejam saat kuku gradasi ungu gelapnya sedikit memanjang.
Diiringi efek resonansi kehampaan dan ledakan energi, dengan suara penjahat muda berbahasa Inggris sepanjang film.
Python SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Python SDK ke 1.26.2.1 atau lebih baru. Lihat Instal SDK.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")
print('please wait...')
rsp = VideoSynthesis.call(
api_key=api_key,
model='wan3.0-video',
prompt='A 20-second ultra-widescreen plush universe adventure clip, featuring ultra-fine plush textures throughout, cinematic space scale, a contrast between cute appearances and intense action, exaggerated FPV camera movements, and realistic soft-body physics. A spaceship made of plush fabric, buttons, zippers, and stuffing cotton carries three small plush animals — a rabbit, a fox, and a crow — fleeing at high speed through a universe composed of giant yarn planets, fluffy nebulae, and puppet giant beasts. A massive interstellar whale beast covered in deep blue long fur with eyes like two glass buttons chases the ship from within the nebula. The dynamics include the zipper ship launching via catapult, high-speed orbiting around a yarn planet, the giant whale bursting out from behind, navigating through a button asteroid belt, being swallowed by the whale beast, escaping through a golden zipper on its back, the whale slowly deflating as if losing its stuffing cotton, and finally flying through a pink-purple fluffy nebula toward a colorful button sun.',
resolution="480P",
ratio="adaptive",
duration=20,
prompt_extend=True)
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))
Java SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Java SDK ke 2.22.31 atau lebih baru. Lihat Instal SDK.
// 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.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
public class Text2Video {
static {
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void syncCall() {
VideoSynthesis videoSynthesis = new VideoSynthesis();
VideoSynthesisParam param =
VideoSynthesisParam.builder()
.apiKey(apiKey)
.model("wan3.0-video")
.prompt("20秒超宽银幕毛绒宇宙冒险片段,整体采用超精细毛绒材质、电影级太空尺度、可爱外形与强烈动作反差、夸张FPV运镜和真实软体物理。一艘由毛绒布、纽扣、拉链与填充棉制成的宇宙飞船,载着兔子、狐狸和乌鸦三只小型毛绒动物,在由巨大毛线行星、绒毛星云和布偶巨兽组成的宇宙中高速逃亡。")
.resolution("480P")
.ratio("adaptive")
.duration(20)
.promptExtend(true)
.build();
VideoSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = videoSynthesis.call(param);
} catch (ApiException | NoApiKeyException e) {
throw new RuntimeException(e.getMessage());
} catch (InputRequiredException e) {
throw new RuntimeException(e);
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
syncCall();
}
}
curl
Langkah 1: Buat tugas dan dapatkan ID tugascurl --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": "wan3.0-video",
"input": {
"prompt": "A 20-second ultra-widescreen plush universe adventure clip, featuring ultra-fine plush textures throughout, cinematic space scale, a contrast between cute appearances and intense action, exaggerated FPV camera movements, and realistic soft-body physics. A spaceship made of plush fabric, buttons, zippers, and stuffing cotton carries three small plush animals — a rabbit, a fox, and a crow — fleeing at high speed through a universe composed of giant yarn planets, fluffy nebulae, and puppet giant beasts. A massive interstellar whale beast covered in deep blue long fur with eyes like two glass buttons chases the ship from within the nebula. The dynamics include the zipper ship launching via catapult, high-speed orbiting around a yarn planet, the giant whale bursting out from behind, navigating through a button asteroid belt, being swallowed by the whale beast, escaping through a golden zipper on its back, the whale slowly deflating as if losing its stuffing cotton, and finally flying through a pink-purple fluffy nebula toward a colorful button sun."
},
"parameters": {
"resolution": "480P",
"ratio": "adaptive",
"duration": 20,
"prompt_extend": true
}
}'
Langkah 2: Dapatkan hasil berdasarkan ID tugascurl -X GET 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
Gambar ke video (frame pertama / pertama-terakhir)
Tentukan gambar frame pertama atau terakhir secara ketat melalui first_frame/last_frame untuk reproduksi gambar referensi tingkat piksel. Cocok untuk kontrol presisi atas frame awal dan akhir.
- Frame pertama ke video: Berikan gambar sebagai frame pertama, lalu model menghasilkan gerakan berikutnya.
- Frame pertama dan terakhir ke video: Tentukan keduanya, lalu model otomatis membuat gerakan transisi di antaranya.
- Mendukung output audio-video; dialog dan efek suara dapat ditentukan dalam prompt.
Konfigurasi parameter: Disarankan ratio = adaptive (otomatis mengikuti rasio aspek gambar input), duration=2~30 detik atau -1.
| Kemampuan | Prompt input | Input frame pertama atau terakhir | Video output |
Frame pertama ke video | (0:00–0:03) Kamera: Medium shot. Adegan: Hutan bambu lukisan tinta dari Image 1. Siluet pendekar bertopi bambu dan berjubah gelap berdiri di tengah kabut tebal serta bayang-bayang bambu bergoyang. Aksi: Tangan kiri ringan bertumpu pada gagang pedang, daun bambu gugur tertiup angin. Suasana: Sunyi, menekan, tekstur butiran tinta terlihat jelas.
| ![]() | |
Frame pertama dan terakhir ke video | [Satu pengambilan kontinu, gerak kamera estetis lambat, tanpa potongan, long take 15 detik, tekstur pigmen mineral lukisan batu berpadu rendering 3D, kontras sian-biru × emas]
| Frame pertama ![]() Frame terakhir ![]() |
Prompt: Frame pertama ke video
(0:00–0:03) Kamera: Medium shot. Adegan: Hutan bambu lukisan tinta dari Image 1. Siluet pendekar bertopi bambu dan berjubah gelap berdiri di tengah kabut tebal serta bayang-bayang bambu bergoyang. Aksi: Tangan kiri ringan bertumpu pada gagang pedang, daun bambu gugur tertiup angin. Suasana: Sunyi, menekan, tekstur butiran tinta terlihat jelas.
(0:03–0:08) Pengantar alur. Kamera: Close-up. Cerita: Pendekar merasakan niat membunuh. Kamera cepat mendekati bagian bawah topi bambu. Detail: Sepasang mata tajam tegas muncul, tatapannya seperti bilah. “Tetes keringat” tinta meluncur dari dahi. Aksi: Tangan kanan perlahan menggenggam gagang, buku jari memutih. Daun bambu jatuh lebih cepat.
(0:08–0:13) Kamera: Orbit cepat mengelilingi pendekar. Dua pembunuh berupa siluet tinta menerobos dari dalam hutan bambu, membawa kait ganda dan bilah pendek. Gerak mereka juga tersusun dari sapuan tinta yang mengalir. Kamera melintas cepat melewati sosok mereka untuk menekankan kecepatan.
(0:13–0:18) Kamera: Nuansa handheld, tangkapan berkecepatan tinggi. Pertarungan: Pendekar mencabut pedang tajam, cahayanya berupa retakan tinta putih murni. Pembunuh menyerang dengan kait ganda. Serangan pertama: Pendekar berputar menebas; benturan dengan kait memercikkan hitam-putih bergaya kaligrafi dan tetes tinta. Kedua: Ia mengecoh, melontarkan diri dari batang bambu, lalu menebas dari atas. Pembunuh berguling menghindar; bambu pecah menjadi jejak tinta. Ketiga: Ujung pedang mengarah ke tenggorokan pembunuh lain yang menangkis dengan bilah pendek; kamera menangkap retakan halus jejak tinta saat bilah bergesekan.
(0:18–0:20) Kamera: Gerak lambat menuju bingkai beku. * Adegan: Pedang berhenti di leher pembunuh yang membeku. * Detail: Topi bambu sedikit miring akibat pertarungan. Hutan kembali tenang, lebih banyak daun menari. * Suasana: Kamera perlahan mundur ke medium shot, membeku pada pendekar menyarungkan pedang dan pembunuh jatuh. * Teks (opsional): Teks gaya tinta di bawah: “Dunia persilatan—selesai dengan satu goresan.” Catatan gaya: Pertahankan gaya lukisan tinta hitam-putih kuat dari Image 1 sepanjang video. Aksi harus terasa seperti sapuan kaligrafi, cepat, kaya detail tetes tinta, percikan, dan retakan tinta.
Prompt: Frame pertama dan terakhir ke video
[Satu pengambilan kontinu, gerak kamera estetis lambat, tanpa potongan, long take 15 detik, tekstur pigmen mineral lukisan batu berpadu rendering 3D, kontras sian-biru × emas]
Pengaturan global: Tekstur lukisan mineral gaya Tiongkok, butiran pigmen mineral dan foil emas, kontras kuat sian-biru dan emas. Danau Barat saat fajar berkabut tipis: permukaan danau berupa sapuan tinta sian-biru matte, sinar pagi emas menembus awan menjadi kolom Tyndall; tiga pagoda batu Three Pools Mirroring the Moon dan Pagoda Leifeng samar dalam kabut, daun serta bunga teratai di depan. Subjek utama adalah dewi air Danau Barat “Xizi”: tekstur lukisan mineral, wajah oval, alis daun willow, mata phoenix, ornamen bunga sinabar di antara alis, kulit giok hangat bercahaya lembut, halo emas pucat di belakang kepala. Rambut disanggul tinggi dengan tusuk teratai emas; rok dan selendang terbuat dari aliran air danau gradasi sian-biru dengan pantulan air berkilau.
Audio dan efek: Guzheng serta seruling bambu lembut, suara riak halus dan burung pagi. Mulai detik 8, suara perempuan halus dan lembut membacakan perlahan: “Jika Danau Barat dibandingkan dengan si cantik Xizi—”; saat menoleh, lanjutkan: “Dengan riasan tipis atau tebal, ia selalu indah.” Tempo lambat, sedikit gema dan resonansi panjang.
[0–3 detik: Tetes air] Extreme macro di tepi daun teratai saat fajar. Tetes air membesar, memantulkan cahaya emas pagi, lalu jatuh perlahan. Kamera tilt turun mengikuti tetes yang jatuh ke danau, membentuk lingkaran riak emas-biru berlapis.
[3–7 detik: Air membentuk sosok] Di pusat riak, air danau perlahan naik membentuk dewi “Xizi”. Air menjadi rok sian-biru dan selendang semitransparan, aliran halus mengitari tubuh. Ia muncul perlahan dari tengah danau, mata tertutup lembut lalu membuka, tusuk teratai emas bercahaya samar. Kamera mengorbit perlahan tatapan menunduk dan rok tenunan air.
[7–11 detik: Teratai di setiap langkah] Ia berjalan tanpa alas di permukaan danau; tiap langkah membentuk riak emas dan teratai bermekaran berurutan. Kamera mundur ke medium-wide: kabut menghilang, tiga pagoda batu bercahaya hangat di kejauhan, Pagoda Leifeng dalam cahaya pagi, willow menyapu air di tepi. Pada detik 8, narasi perempuan dimulai: “Jika Danau Barat dibandingkan dengan si cantik Xizi—”. Selendangnya meninggalkan jejak panjang cahaya air emas-biru.
[11–15 detik: Menoleh—selalu indah] Ia berhenti dan menoleh ke kamera; kamera perlahan mendekat ke medium close-up. Cahaya pagi mengenai wajah, selendang air melayang di sisi, tetes bercahaya jatuh dari ujung rambut menjadi partikel halus. Narasi melanjutkan: “Dengan riasan tipis atau tebal, ia selalu indah.” Ia tersenyum lembut, Pagoda Leifeng dan Three Pools samar di belakang. Detik terakhir membeku sepenuhnya pada tatapan menoleh, tersusun seperti poster film sempurna.
Python SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Python SDK ke 1.26.2.1 atau lebih baru. Lihat Instal SDK.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")
print('please wait...')
rsp = VideoSynthesis.call(
api_key=api_key,
model='wan3.0-video',
prompt='A cat running on the grass',
media=[{"type": "first_frame", "url": "https://cdn.translate.alibaba.com/r/wanx-demo-1.png"}],
resolution="720P",
ratio="adaptive",
duration=5,
prompt_extend=True)
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))
Java SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Java SDK ke 2.22.31 atau lebih baru. Lihat Instal SDK.
// 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.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.ArrayList;
import java.util.List;
public class FirstFrame2Video {
static {
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void syncCall() {
VideoSynthesis videoSynthesis = new VideoSynthesis();
List<VideoSynthesisParam.Media> media = new ArrayList<>();
media.add(VideoSynthesisParam.Media.builder()
.url("https://cdn.translate.alibaba.com/r/wanx-demo-1.png")
.type("first_frame")
.build());
VideoSynthesisParam param =
VideoSynthesisParam.builder()
.apiKey(apiKey)
.model("wan3.0-video")
.prompt("一只猫在草地上奔跑")
.media(media)
.resolution("720P")
.ratio("adaptive")
.duration(5)
.promptExtend(true)
.build();
VideoSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = videoSynthesis.call(param);
} catch (ApiException | NoApiKeyException e) {
throw new RuntimeException(e.getMessage());
} catch (InputRequiredException e) {
throw new RuntimeException(e);
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
syncCall();
}
}
curl
Langkah 1: Buat tugas dan dapatkan ID tugascurl --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": "wan3.0-video",
"input": {
"prompt": "A cat running on the grass",
"media": [
{
"type": "first_frame",
"url": "https://cdn.translate.alibaba.com/r/wanx-demo-1.png"
}
]
},
"parameters": {
"resolution": "720P",
"ratio": "adaptive",
"duration": 5,
"prompt_extend": true
}
}'
Langkah 2: Dapatkan hasil berdasarkan ID tugascurl -X GET 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
Pembuatan video dengan referensi multimodal
Berikan hingga 20 materi referensi (gambar, video, audio, dokumen, halaman web); model otomatis memahami maksud referensi untuk membuat video. Gunakan “Image 1” atau “Img 1”, “Video 1”, “Audio 1”, dan seterusnya dalam prompt untuk merujuk materi sesuai urutannya dalam array input.media.
CatatanAturan penamaan materi: Gambar, video, dan audio dihitung terpisah. reference_image pertama dalam array input.media sesuai “Img 1” atau “Image 1”, kedua “Img 2” atau “Image 2”; reference_video pertama sesuai “Video 1”, kedua “Video 2”; reference_audio pertama sesuai “Audio 1”, kedua “Audio 2”, dan seterusnya. Ketiganya tidak bertabrakan dan dapat digunakan bersamaan sebagai “Image 1”, “Video 1”, dan “Audio 1”.
- Referensi karakter/objek: Berikan gambar karakter atau objek untuk membuat video dengan tampilan konsisten.
- Referensi gerak kamera/aksi: Berikan video referensi untuk meniru gerakan kamera atau koreografi aksinya.
- Referensi gaya: Berikan gambar referensi gaya untuk menerapkan estetikanya pada video.
- Referensi audio: Berikan musik atau suara untuk membuat tarian atau animasi lip-sync yang selaras dengan irama/nada.
- Dokumen/halaman web ke video: Berikan dokumen atau tautan web publik untuk mengurai isinya otomatis dan membuat video.
Konfigurasi parameter: Disarankan ratio = adaptive (menyesuaikan materi referensi), duration=2~30 detik atau -1.
1. Referensi gambar/video/audio
| Kemampuan | Prompt input | Materi referensi input | Video output |
Gambar referensi | Gunakan produk lip gloss pada Image 1 untuk membuat video swatch model 15 detik vertikal, menonjolkan efek warna bibir. | ![]() | |
Referensi gambar+video+audio | Gantikan peran perempuan di Video 1 dengan karakter laki-laki dari Image 1 secara mulus. Ia duduk di dekat jendela, memegang telepon di telinga. [Suara dan dialog] Ambil karakteristik suara dari Audio 1, lalu buat karakter berkata: “Benarkah? Kedengarannya bagus! Kapan kamu pulang? Aku sangat merindukanmu.” [Lip-sync dan ekspresi] Suara harus menggerakkan bibir secara presisi dengan buka-tutup alami. Sertakan kedipan, anggukan ringan, dan kesan bernapas saat berbicara. Ekspresi mikro harus cocok sempurna dengan rasa peduli dan rindu dalam dialog. [Pencahayaan dan adegan] Wajah menerima campuran alami cahaya hangat dalam ruangan dan neon dingin di luar jendela. Tetes hujan terus meluncur perlahan di jendela latar, uap tipis naik dari kopi di meja. Tepi karakter menyatu alami tanpa artefak potongan. [Kamera dan kualitas] Long take 15 detik, kamera maju sangat lambat, bingkai sangat stabil, pencahayaan sinematik, resolusi 8K, kualitas fotorealistis. | Gambar referensi ![]() Video referensi Audio referensi |
Python SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Python SDK ke 1.26.2.1 atau lebih baru. Lihat Instal SDK.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")
print('please wait...')
rsp = VideoSynthesis.call(
api_key=api_key,
model='wan3.0-video',
prompt='Video 1 holds Image 3, sitting on the chair in Image 4, playing a soothing country folk song, and says: "The sunshine is so nice today." Image 1 holds Image 2 in hand, walks past Video 1, places Image 2 on the table next to Video 1, and says: "That sounds great, can you sing it again?"',
media=[
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg"},
{"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4"},
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png"},
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png"},
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png"}
],
resolution="720P",
ratio="adaptive",
duration=5,
prompt_extend=True)
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))
Java SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Java SDK ke 2.22.31 atau lebih baru. Lihat Instal SDK.
// 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.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.ArrayList;
import java.util.List;
public class Reference2Video {
static {
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void syncCall() {
VideoSynthesis videoSynthesis = new VideoSynthesis();
List<VideoSynthesisParam.Media> media = new ArrayList<>();
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg")
.type("reference_image")
.build());
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4")
.type("reference_video")
.build());
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png")
.type("reference_image")
.build());
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png")
.type("reference_image")
.build());
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png")
.type("reference_image")
.build());
VideoSynthesisParam param =
VideoSynthesisParam.builder()
.apiKey(apiKey)
.model("wan3.0-video")
.prompt("视频1抱着图3,在图4的椅子上弹奏一支舒缓的乡村民谣,并说道:\"今天的阳光真好。\"图1手中拿着图2,路过视频1,把手中的图2放到视频1旁边的桌子上,并说道:\"真好听,能不能再唱一遍\"。")
.media(media)
.resolution("720P")
.ratio("adaptive")
.duration(5)
.promptExtend(true)
.build();
VideoSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = videoSynthesis.call(param);
} catch (ApiException | NoApiKeyException e) {
throw new RuntimeException(e.getMessage());
} catch (InputRequiredException e) {
throw new RuntimeException(e);
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
syncCall();
}
}
curl
Langkah 1: Buat tugas dan dapatkan ID tugascurl --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": "wan3.0-video",
"input": {
"prompt": "Video 1 holds Image 3, sitting on the chair in Image 4, playing a soothing country folk song, and says: \"The sunshine is so nice today.\" Image 1 holds Image 2 in hand, walks past Video 1, places Image 2 on the table next to Video 1, and says: \"That sounds great, can you sing it again?\"",
"media": [
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg"},
{"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4"},
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png"},
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png"},
{"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png"}
]
},
"parameters": {
"resolution": "720P",
"ratio": "adaptive",
"duration": 5,
"prompt_extend": true
}
}'
Langkah 2: Dapatkan hasil berdasarkan ID tugascurl -X GET 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
2. Referensi file atau halaman web
| Kemampuan | Prompt input | Materi input | Video output |
File referensi - PPT ke video | Iklan produk kacamata pintar premium, dengan gaya keseluruhan minimalis, futuristis, modis, pencahayaan terkendali, palet utama hitam, abu-abu perak, dan biru es, dengan aksen cahaya putih lembut lokal serta grafis UI parameter.
| ||
File referensi - Excel ke video | Durasi total 22 detik, 4 segmen berurutan. Latar putih murni sepanjang video, blok warna lembut dan grafik garis bersih, estetika bisnis minimalis ala Apple Keynote, font sans-serif abu-abu tua.
|
Prompt: File referensi - PPT ke video
Iklan produk kacamata pintar premium, dengan gaya keseluruhan minimalis, futuristis, modis, pencahayaan terkendali, palet utama hitam, abu-abu perak, dan biru es, dengan aksen cahaya putih lembut lokal serta grafis UI parameter. Dibuka dengan latar hitam murni, kacamata perlahan muncul dari gelap; sorotan halus meluncur sepanjang tepi tangkai, siluet bingkai dibentuk cahaya tepi dingin. Kamera melintasi lensa, bantalan hidung, engsel, tangkai, dan detail bahan dalam extreme close-up, menampilkan tekstur logam serta komposit berkinerja tinggi, penyelesaian permukaan halus terkendali, dan garis ramping mengalir. Produk lalu berputar perlahan di udara dengan motion graphic minimalis yang menampilkan parameter inti secara sinkron. Kamera cepat memusat, semua komponen kembali tepat untuk merakit produk lengkap. Beralih ke model muda yang mengenakannya: wajah tegas, percaya diri, busana urban mewah ramping, menoleh, mengangkat tangan, berjalan, dan tersenyum alami dalam ruang minimalis dan pencahayaan kota. Kamera menampilkan sudut depan, samping, dan serong belakang, menonjolkan kecocokan tipis, siluet modis, serta kegunaan sehari-hari. Akhirnya produk melayang diam pada latar warna solid; kamera perlahan mendekati logo dan slogan utama. Musik berupa suasana elektronik minimalis dengan ketukan presisi dan ritme bersih kuat. Visual halus, terkendali, murni, berciri merek kuat dengan estetika teknologi internasional.
Prompt: File referensi - Excel ke video
Durasi total 22 detik, 4 segmen berurutan. Latar putih murni sepanjang video, blok warna lembut dan grafik garis bersih, estetika bisnis minimalis ala Apple Keynote, font sans-serif abu-abu tua. BGM wajib, sepanjang film dengan volume jelas: Musik bisnis ringan ceria, ritme stabil dan melodi sederhana, dimulai dari detik pertama dan terus tanpa putus. Saat narasi masuk, musik tidak hilang, hanya sedikit lebih pelan dari suara. Efek suara: “whoosh” saat blok bergeser masuk, “klik” keyboard ringan saat angka berubah, dan “ding” jernih saat data penting muncul. Narasi: Suara pria atau perempuan berbahasa Inggris, cerah percaya diri, sekitar 2,5 kata/detik, seperti presentasi rapat kuartalan—profesional namun hangat, berirama, sedikit menekankan angka penting.
H1-2026跨境电商月度GMV.xlsx
Segmen 1: Wide shot, komposisi tengah, latar putih murni, cahaya lembut, gaya bisnis minimalis; referensi visual berupa latar putih bersih dan blok lembut dari gambar referensi 1. Layar putih membuka dari tengah; partikel emas tak terhitung berkumpul dari semua sisi, bertabrakan berkilat lalu membentuk judul “H1 2026 · Wan”. Efek cahaya data mengalir di permukaan teks, partikel halus mengorbit tepi, memukau namun elegan. Setelah jeda, judul larut menjadi aliran partikel; dua angka besar abu-abu tua masuk di bawah: kiri nilai B7 $1,580 (GMV Januari), kanan G7 $3,460 (GMV Juni), dihubungkan panah abu-abu muda dengan teks kecil “Monthly GMV Growth” di bawah. Tag bulat-kotak koral muncul di bawah, menampilkan H8 +45.7% (pertumbuhan total H1), diiringi “ding” jernih. Narasi cerah percaya diri: “In the first half of 2026, monthly GMV grew from 15.8 to 34.6 million dollars.” BGM jelas sejak detik pertama dengan ritme ringan sepanjang adegan. Bunyi “whoosh” halus menyertai blok bergeser. Di akhir, blok meluncur ke kedua sisi untuk menampilkan segmen berikutnya.
Segmen 2: Wide shot, sumbu Y kiri dan X bawah, latar putih dengan kisi titik abu-abu muda, cahaya lembut, bisnis minimalis; acuan grafik tren dari gambar referensi 2. Sumbu X menandai Jan, Feb, Mar, Apr, May, Jun berjarak sama, sans-serif abu-abu muda; sumbu Y menampilkan skala nilai. Tiga garis digambar serentak dari kiri: koral untuk Asia Tenggara (baris 4: B4=$580, C4=$640, D4=$750, E4=$880, F4=$1,050, G4=$1,280), teal-biru untuk Amerika Utara (baris 5: B5=$420, C5=$480, D5=$560, E5=$680, F5=$860, G5=$1,260), amber untuk Eropa (baris 6: B6=$580, C6=$610, D6=$680, E6=$750, F6=$830, G6=$920). Semua berawal di posisi Jan yang sama dan naik ke kanan menuju Jun mengikuti ritme. Di bawah tiap garis ada isi gradasi transparansi 30%. Pada setiap bulan, titik memantul sedikit dan label nilai tepat mengambang di atas—hanya nilai dolar, tanpa persentase atau teks lain, persis sesuai sel. Legenda tiga blok warna dan nama pasar berbahasa Inggris muncul di kanan atas. Setelah enam titik tercapai, tahan sejenak. Narasi stabil: “All three markets — Southeast Asia, North America, and Europe — showed consistent month-over-month growth, with no single dip.” BGM terus terdengar, klik keyboard halus menyertai data. Label Juni membesar memenuhi layar lalu mengecil dan tersusun ulang menuju segmen berikutnya.
Segmen 3: Wide shot, grafik batang 60% kiri dan kolom data 40% kanan, latar putih, cahaya lembut, bisnis minimalis; acuan grafik batang gambar referensi 1. Enam batang teal-biru membulat naik berurutan dari kiri untuk Januari–Juni; semuanya harus terlihat utuh. Tinggi tepat mengikuti nilai Amerika Utara baris 5: B5=$420, C5=$480, D5=$560, E5=$680, F5=$860, G5=$1,260, urut rendah ke tinggi dengan tren pertumbuhan bulanan jelas. Tiap batang naik dengan “whoosh” pegas ringan dan label dolar tepat di atasnya. Sesudah lengkap, lima pertumbuhan bulanan muncul vertikal di kanan: Feb +14.3% (C5 vs B5), Mar +16.7% (D5 vs C5), Apr +21.4% (E5 vs D5), May +26.5% (F5 vs E5), Jun +46.5% (G5 vs F5). Tampilkan ikon panah hijau naik + persentase, misalnya ↑+14.3%, dalam pola tangga dari atas ke bawah, font sedikit besar dan jelas. Setiap angka masuk dengan “klik” halus. Terakhir, pertumbuhan total Amerika Utara +200% (G5=$1,260 vs B5=$420) muncul besar berwarna koral di tengah dengan “ding”, bertahan sebentar dikelilingi halo tipis. Narasi menekankan data: “North America was our growth engine — up two hundred percent in just six months, accelerating every single month.” BGM jelas dengan ritme menuju puncak. Angka pertumbuhan total membesar di tengah, elemen sekitar memudar lembut untuk transisi terakhir.
Segmen 4: Wide shot, komposisi tengah sedikit ke atas, latar putih, cahaya lembut, bisnis minimalis; acuan diagram cincin gambar referensi 3. Diagram donat sederhana di tengah hanya memiliki tiga busur koral, teal-biru, dan amber untuk pangsa H1: Asia Tenggara dari H4=5180, Amerika Utara H5=4260, Eropa H6=4370, total H7=13810. Pisahkan busur dengan celah putih; tanpa simbol persen, angka, atau label tersebar—hanya tiga busur warna murni. Diagram berputar lambat sekitar 10°/detik. Di tengah, angka besar abu-abu tua naik cepat dari 0 ke nilai H7 $138.1M (138,1 juta dolar), dengan klik halus kontinu dan “ding” saat nilai akhir tercapai. Subjudul abu-abu muda muncul: “Three Markets · All Growing · Zero Downturn.” Narasi menutup dengan tenang, menyisakan 1 detik hening: “138 million in total — all markets growing, zero downturns.” BGM tetap terdengar dan perlahan memudar. Hening 1 detik sebelum film berakhir.
Python SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Python SDK ke 1.26.2.1 atau lebih baru. Lihat Instal SDK.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")
print('please wait...')
rsp = VideoSynthesis.call(
api_key=api_key,
model='wan3.0-video',
prompt='A high-end smart glasses product advertisement, with an overall minimalist, futuristic, fashion-forward style, restrained lighting, a palette of black, silver-gray, and ice-blue as main tones, with localized soft white light accents and parameter UI graphics. Opening on a pure black background, a pair of smart glasses slowly emerges from the darkness, with refined highlights gliding along the temple edges, the frame silhouette outlined under cold edge lighting. The camera passes in extreme close-up over the lenses, nose pads, hinges, temples, and material details, showcasing the delicate texture of metal and high-performance composite materials, with a refined and restrained surface treatment and slim, flowing lines. The product then slowly rotates in midair, with minimalist motion graphics displaying core parameter information in sync. The camera then quickly converges, all components precisely returning to assemble into the complete product. It transitions to a young model wearing the glasses — the model has defined features, confident demeanor, dressed in sleek, upscale urban fashion, naturally turning their head, raising their hand, walking, and smiling in a minimalist space and urban lighting environment. The camera shows the glasses from front, side, and rear-oblique angles, highlighting the slim fit, fashionable silhouette, and everyday versatility. The ending features the product floating and frozen against a solid-color background, with the camera slowly pushing in toward the brand logo and core slogan. The overall music is minimalist electronic ambiance with precise beats, clean and powerful rhythm. The visual quality is refined, restrained, and pure, with a strong brand signature and international tech aesthetic.',
media=[
{"type": "file", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260806/ebapmr/glass.pptx"}
],
resolution="480P",
ratio="adaptive",
duration=10,
prompt_extend=True)
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))
Java SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Java SDK ke 2.22.31 atau lebih baru. Lihat Instal SDK.
// 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.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.ArrayList;
import java.util.List;
public class File2Video {
static {
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void syncCall() {
VideoSynthesis videoSynthesis = new VideoSynthesis();
List<VideoSynthesisParam.Media> media = new ArrayList<>();
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260806/ebapmr/glass.pptx")
.type("file")
.build());
VideoSynthesisParam param =
VideoSynthesisParam.builder()
.apiKey(apiKey)
.model("wan3.0-video")
.prompt("一支高端智能眼镜产品广告,整体风格极简、未来感、时尚高级,光影克制,画面以黑色、银灰色、冰蓝色为主色调。")
.media(media)
.resolution("480P")
.ratio("adaptive")
.duration(10)
.promptExtend(true)
.build();
VideoSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = videoSynthesis.call(param);
} catch (ApiException | NoApiKeyException e) {
throw new RuntimeException(e.getMessage());
} catch (InputRequiredException e) {
throw new RuntimeException(e);
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
syncCall();
}
}
curl
Langkah 1: Buat tugas dan dapatkan ID tugascurl --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": "wan3.0-video",
"input": {
"prompt": "A high-end smart glasses product advertisement, with an overall minimalist, futuristic, fashion-forward style, restrained lighting, a palette of black, silver-gray, and ice-blue as main tones, with localized soft white light accents and parameter UI graphics. Opening on a pure black background, a pair of smart glasses slowly emerges from the darkness, with refined highlights gliding along the temple edges, the frame silhouette outlined under cold edge lighting. The camera passes in extreme close-up over the lenses, nose pads, hinges, temples, and material details, showcasing the delicate texture of metal and high-performance composite materials, with a refined and restrained surface treatment and slim, flowing lines. The product then slowly rotates in midair, with minimalist motion graphics displaying core parameter information in sync. The camera then quickly converges, all components precisely returning to assemble into the complete product. It transitions to a young model wearing the glasses — the model has defined features, confident demeanor, dressed in sleek, upscale urban fashion, naturally turning their head, raising their hand, walking, and smiling in a minimalist space and urban lighting environment. The camera shows the glasses from front, side, and rear-oblique angles, highlighting the slim fit, fashionable silhouette, and everyday versatility. The ending features the product floating and frozen against a solid-color background, with the camera slowly pushing in toward the brand logo and core slogan. The overall music is minimalist electronic ambiance with precise beats, clean and powerful rhythm. The visual quality is refined, restrained, and pure, with a strong brand signature and international tech aesthetic.",
"media": [
{
"type": "file",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260806/ebapmr/glass.pptx"
}
]
},
"parameters": {
"resolution": "480P",
"ratio": "adaptive",
"duration": 10,
"prompt_extend": true
}
}'
Langkah 2: Dapatkan hasil berdasarkan ID tugascurl -X GET 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
Pengeditan video
Berikan video referensi dan instruksi bahasa alami untuk mengedit secara presisi. Bagian yang tidak ditentukan untuk diubah tetap sama.
- Tambah elemen: Tambahkan objek atau karakter baru pada posisi tertentu dalam video.
- Hapus elemen: Hapus objek atau karakter dengan pengisian latar belakang otomatis.
- Ubah elemen: Ganti penampilan, pakaian, usia, dan atribut karakter lainnya.
- Edit gaya/pencahayaan: Ubah gaya visual keseluruhan (misalnya tanah liat, lukisan tinta) atau sesuaikan pencahayaan.
- Edit dialog: Ubah isi dialog karakter dalam video.
- Edit dengan referensi: Berikan gambar referensi dan tambahkan elemennya ke video.
Konfigurasi parameter: Disarankan ratio = adaptive, duration = -1 (mempertahankan rasio aspek dan durasi asli). Prompt harus memuat kata yang menyatakan maksud pengeditan, seperti “edit video”, “hapus”, “ganti”, atau “ubah menjadi”.
| Kemampuan | Prompt input | Video referensi input | Video output |
Konversi gaya | Ubah seluruh adegan menjadi gaya tanah liat | ||
Edit dialog | Edit video, ubah dialog pria menjadi: “Kesepakatan selesai. Sekarang... kita menghilang.” | ||
Edit dengan referensi | Edit video: Perempuan di Video 1 memakai topi dari Image 1, pas alami mengikuti bentuk kepala. Pria di Video 1 memakai topi dari Image 2 dengan kecocokan alami. Ganti kemeja cokelat kemerahan pria dengan kemeja denim biru washed longgar dari Image 3, kerah terbuka dan lengan digulung sampai lengan bawah. Gerakan, pakaian lain, dan sisa adegan tetap sama. | Video referensi Gambar referensi (3) ![]() ![]() ![]() |
Python SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Python SDK ke 1.26.2.1 atau lebih baru. Lihat Instal SDK.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")
print('please wait...')
rsp = VideoSynthesis.call(
api_key=api_key,
model='wan3.0-video',
prompt='Convert the entire scene to clay style',
media=[
{"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4"}
],
resolution="720P",
duration=-1,
prompt_extend=True)
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))
Java SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Java SDK ke 2.22.31 atau lebih baru. Lihat Instal SDK.
// 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.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.ArrayList;
import java.util.List;
public class VideoEdit {
static {
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void syncCall() {
VideoSynthesis videoSynthesis = new VideoSynthesis();
List<VideoSynthesisParam.Media> media = new ArrayList<>();
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4")
.type("reference_video")
.build());
VideoSynthesisParam param =
VideoSynthesisParam.builder()
.apiKey(apiKey)
.model("wan3.0-video")
.prompt("将整个画面转换为黏土风格")
.media(media)
.resolution("720P")
.duration(-1)
.promptExtend(true)
.build();
VideoSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = videoSynthesis.call(param);
} catch (ApiException | NoApiKeyException e) {
throw new RuntimeException(e.getMessage());
} catch (InputRequiredException e) {
throw new RuntimeException(e);
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
syncCall();
}
}
curl
Langkah 1: Buat tugas dan dapatkan ID tugascurl --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": "wan3.0-video",
"input": {
"prompt": "Convert the entire scene to clay style",
"media": [
{
"type": "reference_video",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4"
}
]
},
"parameters": {
"resolution": "720P",
"duration": -1,
"prompt_extend": true
}
}'
Langkah 2: Dapatkan hasil berdasarkan ID tugascurl -X GET 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
Perpanjangan video
Perpanjang video yang ada sebelum, sesudah, atau kedua arah. Gaya visual dan karakter tetap konsisten; prompt menjelaskan perubahan gerak pada bagian tambahan.
- Perpanjangan sesudah: Gunakan frame terakhir sebagai titik awal untuk membuat kelanjutannya.
- Perpanjangan sebelum: Gunakan frame pertama sebagai titik akhir untuk membuat bagian sebelumnya.
- Perpanjangan dua arah: Gunakan video sebagai bagian tengah dan perpanjang sebelum dan sesudah secara bersamaan.
Konfigurasi parameter: Disarankan ratio = adaptive (mempertahankan rasio aspek asli). Prompt harus memuat maksud perpanjangan, seperti “perpanjang”, “lanjutkan”, atau “perpanjang sebelum/sesudah”.
- Disarankan
duration=-1(model merekomendasikan durasi sesuai input), atau atur ke durasi output target: durasi video input + durasi tambahan. Misalnya, untuk video 5 detik yang ditambah 2 detik sesudahnya,durationdapat diatur ke-1atau7. - Total durasi input + output harus ≤30 detik.
| Kemampuan | Prompt input | Video referensi input | Video output |
Perpanjangan sesudah | Pembuat roti mengangkat roti yang sudah dioles, meletakkan kuas, lalu kamera mengikutinya ke oven di belakang untuk memanggang. Ia menutup pintu oven, berdiri di samping, melihat roti dipanggang, menghirup aromanya, lalu berkata: “enak sekali”. | ||
Perpanjangan sebelum | Perpanjang Video 1 sebelum awalnya selama 15 detik. Karakter A pria berambut pendek cokelat tua, memakai jas ekor hitam, kemeja putih, dasi kupu-kupu hitam, dan rompi beige. Karakter B perempuan berambut cokelat disanggul, mengenakan gaun vintage panjang beige berlengan puff dengan renda hitam di rok dan anting tetes gelap.
| ||
Perpanjangan dua arah | Gunakan video sebagai bagian tengah, tambah dua detik sebelumnya: Kamera mengikuti mulus saat gadis berjalan pelan menuju kamera, berhenti, mengangkat kepala lembut, dan menarik napas dalam di udara dingin dengan bibir sedikit terbuka. Tambah tiga detik sesudahnya: Ia selesai menggosok tangan, menatap kamera dan tersenyum hangat cerah. Ia perlahan mengangkat tangan bersarung untuk menangkap keping salju yang turun lembut. Kamera mundur perlahan ke medium-long shot, memperlihatkan jalan hutan bersalju yang cerah, backlight golden hour, lens flare, depth of field dangkal, suasana hangat menenangkan. |
Prompt: Perpanjangan sebelum
Perpanjang Video 1 sebelum awalnya selama 15 detik. Karakter A pria berambut pendek cokelat tua, memakai jas ekor hitam, kemeja putih, dasi kupu-kupu hitam, dan rompi beige. Karakter B perempuan berambut cokelat disanggul, mengenakan gaun vintage panjang beige berlengan puff dengan renda hitam di rok dan anting tetes gelap. Di ballroom, cahaya lampu kristal memantul di lantai marmer. Tamu mengobrol dalam kelompok kecil sambil memegang gelas, bersuara rendah. Prelude waltz gesek anggun mulai perlahan, percakapan mereda. B berjalan pelan dari satu sisi ruangan, ujung rok menyapu ringan lantai, matanya memandang sekeliling. A muncul dari kerumunan, melewati tamu langsung menuju B, membungkuk sedikit lalu mengulurkan tangan kanan dengan tatapan hangat penuh perhatian. B menunduk sambil tersenyum lembut, meletakkan tangan kanan di telapak A. Mereka bertukar senyum; A menuntun B ke tengah lantai dansa. Tamu mundur alami memberi ruang, semua mata tertuju pada mereka. Tangan kiri A memegang tangan kanan B terangkat; tangan kanannya lembut di pinggang B. Mereka mengambil posisi waltz, melangkah pada ketukan kuat senar, mulai berputar. Suasana pesta istana abad ke-19 yang elegan, nuansa emas hangat.
Python SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Python SDK ke 1.26.2.1 atau lebih baru. Lihat Instal SDK.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")
print('please wait...')
rsp = VideoSynthesis.call(
api_key=api_key,
model='wan3.0-video',
prompt='Extend Video 1 backward, the baker brings up the brushed bread, puts the brush aside, the camera follows the baker to the oven behind for baking',
media=[
{"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/rptnhd/wan2.7-i2v-video-continuation-2.mp4"}
],
resolution="720P",
ratio="adaptive",
duration=5,
prompt_extend=True)
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))
Java SDK
PentingSebelum menjalankan kode berikut, perbarui DashScope Java SDK ke 2.22.31 atau lebih baru. Lihat Instal SDK.
// 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.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.ArrayList;
import java.util.List;
public class VideoExtend {
static {
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void syncCall() {
VideoSynthesis videoSynthesis = new VideoSynthesis();
List<VideoSynthesisParam.Media> media = new ArrayList<>();
media.add(VideoSynthesisParam.Media.builder()
.url("https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/rptnhd/wan2.7-i2v-video-continuation-2.mp4")
.type("reference_video")
.build());
VideoSynthesisParam param =
VideoSynthesisParam.builder()
.apiKey(apiKey)
.model("wan3.0-video")
.prompt("将视频1向后延长,面包师端上刷好的面包,将刷子放到一旁,镜头跟随面包师,去斜后方的烤炉进行烤制")
.media(media)
.resolution("720P")
.ratio("adaptive")
.duration(5)
.promptExtend(true)
.build();
VideoSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = videoSynthesis.call(param);
} catch (ApiException | NoApiKeyException e) {
throw new RuntimeException(e.getMessage());
} catch (InputRequiredException e) {
throw new RuntimeException(e);
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
syncCall();
}
}
curl
Langkah 1: Buat tugas dan dapatkan ID tugascurl --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": "wan3.0-video",
"input": {
"prompt": "Extend Video 1 backward, the baker brings up the brushed bread, puts the brush aside, the camera follows the baker to the oven behind for baking",
"media": [
{
"type": "reference_video",
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/rptnhd/wan2.7-i2v-video-continuation-2.mp4"
}
]
},
"parameters": {
"resolution": "720P",
"ratio": "adaptive",
"duration": 5,
"prompt_extend": true
}
}'
Langkah 2: Dapatkan hasil berdasarkan ID tugascurl -X GET 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
Media input
Setiap elemen array input.media berisi kolom type dan url. Jenis yang didukung beserta batasannya adalah:
type | Deskripsi | Batasan |
| Gambar frame pertama, digunakan secara ketat sebagai frame awal video | Maksimal 1 |
| Gambar frame terakhir, digunakan secara ketat sebagai frame akhir video | Maksimal 1 |
| Gambar referensi | Maksimal 10 |
| Video referensi | Maksimal 5, durasi total tidak lebih dari 15 detik |
| Audio referensi | Maksimal 5, durasi total tidak lebih dari 15 detik |
| File (docx, doc, xlsx, xls, pptx, ppt, pdf, txt, md) | Maksimal 1, tidak dapat digunakan bersamaan dengan link |
| Tautan web (halaman web publik) | Maksimal 1, tidak dapat digunakan bersamaan dengan file |
PentingJenis reference_xx/file/link dan first_frame/last_frame saling eksklusif dan tidak dapat digunakan dalam permintaan yang sama.
Video output
- Resolusi: 480P, 720P, 1080P (default).
- Rasio aspek: 16:9, 4:3, 1:1, 3:4, 9:16, adaptive (default, menyesuaikan materi input).
- Durasi: 2~30 detik; -1 (durasi cerdas, default 5 detik). Jika ada input video, total input + output ≤30 detik.
- Format: MP4, frame rate 30 fps.
- Audio-video: Aktif secara default; nonaktifkan dengan
audio=false. - URL video berlaku selama 24 jam. Segera simpan video.
Penagihan dan batas laju
- Untuk rincian penagihan, lihat Harga model.
- Untuk rincian batas laju, lihat Batas laju.







