Wprowadzenie
Wan 2.6 Obraz na wideo zaczyna od kadru przesłanego w image_url i zwraca dokładnie 5, 10 lub 15 sekund w 720p lub 1080p, razem z dźwiękiem. Kadr ustala obiekt, garderobę, scenografię, kierunek światła i proporcje klipu. Prompt jest opcjonalny i mieści do 1500 znaków: jedną akcję dla pojedynczego ujęcia albo ponumerowane ujęcia dla montażu wieloujęciowego.
Wybierz tryb według materiału początkowego
| Od czego zaczynasz | Tryb |
|---|---|
| opisana scena lub scenariusz | Wan 2.6 Tekst na wideo |
| zatwierdzony obraz początkowy | Wan 2.6 Obraz na wideo |
| osobne referencje wyglądu, ruchu lub dźwięku | Wan 2.6 Referencje na wideo |
Najważniejsze funkcje
Kadr decyduje o formacie i wyglądzie
Nie ma pola proporcji obrazu: klip zachowuje proporcje przesłanego obrazu, więc dostawa w 9:16 zaczyna się od kadrowania do 9:16. Kadr może być w formacie JPEG, PNG bez przezroczystości, BMP lub WEBP, mieć od 240 do 8000 pikseli na każdym boku i nie więcej niż 20 MB. Wszystko, co na nim widać, jest już przesądzone, więc prompt może opisywać wyłącznie ruch.
Pokrycie sceny wycięte z jednego kadru
Gdy shot_type ma wartość multi, model może ciąć między ujęciami z różnych kątów, zachowując look kadru początkowego. Dzięki temu piętnastosekundowy klip mieści plan ogólny, detal i puentę zamiast jednego dryfującego ruchu kamery. Żądanie multi zawsze działa z włączonym rozszerzaniem promptu. Przy obrotach produktu, mówiących postaciach i wszystkim, co musi pozostać ciągłe, zostań przy single, bo multi z założenia przerywa ciągłość.
Dźwięk generowany albo dostarczony
Klip wraca z dźwiękiem generowanym w tym samym przebiegu co obraz. Żeby mowa albo akcenty muzyczne wypadły tam, gdzie się ich spodziewasz, prześlij audio_url: WAV lub MP3, od 3 do 30 sekund, do 15 MB. Dłuższa ścieżka jest przycinana do długości klipu; przy krótszej reszta klipu pozostaje cicha.
Parametry żądania
| Parametr | Wymagane | Uwaga |
|---|---|---|
image_url | Tak | Klatka początkowa. Stąd biorą się bohater, kostium, scenografia, kierunek światła i proporcje klipu, więc najpierw ją przytnij. |
prompt | Nie | Opcjonalny. Jedna akcja dla ciągłego ujęcia albo ponumerowane ujęcia dla montażu. od 1 znaków · do 1500 znaków |
negative_prompt | Nie | To, co nie może się pojawić: druga osoba, napisy, rekwizyt, który kadr wciąż wprowadza z powrotem. Maksymalnie 500 znaków. do 500 znaków |
resolution | Nie | 720p lub 1080p, domyślnie 720p. Wyznacza stawkę za sekundę i czas przetwarzania. |
duration_seconds | Nie | Dokładnie 5, 10 lub 15. Montaż z kilku ujęć potrzebuje dłuższych wariantów, żeby się rozwinąć. |
audio_url | Nie | Kwestia mówiona albo motyw muzyczny, za którym ma podążać klip, żeby głos i akcenty padały tam, gdzie tego oczekujesz. WAV lub MP3, od 3 do 30 sekund, maksymalnie 15 MB. |
shot_type | Nie | single utrzymuje jedno ciągłe ujęcie; multi pozwala modelowi ciąć między ujęciami, co sprzyja krótkim historiom, ale kosztuje ciągłość. |
enable_prompt_expansion | Nie | Domyślnie wyłączone. Po włączeniu jednolinijkowy pomysł rozrasta się w listę ujęć dla multi; zostaw wyłączone, jeśli prompt jest już precyzyjny. Domyślnie: |
seed | Nie | Od 0 do 2147483647. Trzymaj stałą wartość, gdy porównujesz single i multi z tej samej klatki. |
Cennik
| Specyfikacja | Cena |
|---|---|
| $0.09 / sekundę |
| $0.135 / sekundę |
Zastosowania
Makro produktu, które nie może skakać
Przykład z serum animuje zdjęcie buteleczki z pipetą przez pięć sekund w 1080p ze stałym seedem. Z końcówki pipety spada jedna kropla, po płynie rozchodzą się kręgi, a pas światła na szkle lekko się rozjaśnia, wszystko w zablokowanym kadrze makro z cichym dźwiękiem szkła. Zostaje pojedynczym ujęciem, bo ujęcie produktu nie powinno przeskakiwać między kątami.
Krótka historia we wnętrzu z jednego zdjęcia
Przykład z mieszkaniem wieczorem trwa 15 sekund w 720p, z shot_type ustawionym na multi i włączonym rozszerzaniem promptu. Jeden kadr wnętrza daje trzy ujęcia: lampa mruga, gdy za oknem zapalają się światła miasta, złożony koc zsuwa się z fotela, a drzwi wejściowe otwierają się i wpuszczają światło z korytarza na deski podłogi, przy cichym tle pokoju i odległym ruchu ulicznym.
Postać, która wypowiada twoją kwestię
Połącz obraz postaci z nagraną kwestią w audio_url, a mowa wypadnie tam, gdzie się jej spodziewasz, a nie jako ogólny ruch. Mówiące postacie wymagają single i warto sprawdzić całą długość: gdy ścieżka jest krótsza od klipu, reszta odtwarza się bez dźwięku.
Wskazówki
Przygotuj kadr, zanim napiszesz słowo
Wykadruj obraz do formatu dostawy i upewnij się, że już pokazuje garderobę, scenografię i światło, na których ci zależy, bo żaden prompt nie uratuje złego pierwszego kadru. Usuń napisy albo drugi obiekt, którego nie chcesz animować, a do wszystkiego, co kadr uparcie przywraca, na przykład rekwizytu czy tekstu na ekranie, użyj negative_prompt o długości do 500 znaków.
Opisuj ruch, nie to, co już widać
Przy pojedynczym ujęciu napisz jedną akcję i jeden ruch kamery. Prompt z serum wymienia kroplę, kręgi, zmianę pasa światła, kadrowanie i jeden dźwięk, a nie mówi nic o kształcie buteleczki ani o etykiecie, bo kadr już je zawiera.
A single drop falls from the dropper tip into the bottle and sends slow rings across the liquid surface; the light band on the glass brightens a little. Locked macro framing, soft chime of glass.
Zaplanuj montaż wieloujęciowy
Napisz ponumerowane ujęcia, każde z własnym planem, i wybierz 10 lub 15 sekund, żeby cięcia miały miejsce. Wybór multi włącza enable_prompt_expansion dla tego żądania. Przy pojedynczym ujęciu opcja jest domyślnie wyłączona, więc precyzyjny prompt trafia dokładnie w takiej postaci, w jakiej go napisano.
Porównaj single i multi z tego samego kadru
Ustal seed, który przyjmuje wartości od 0 do 2147483647, zostaw bez zmian kadr i prompt, a potem wyślij żądanie raz jako single i raz jako multi, żeby zobaczyć, co lepiej służy ujęciu. Rozdzielczość wyznacza stawkę za sekundę i czas realizacji zadania, więc dopracuj sformułowania w 720p, zanim wyrenderujesz w 1080p. Stały seed stabilizuje porównanie, ale nie gwarantuje identycznego co do klatki powtórzenia.
Szybki start z API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/wan-2.6/image-to-video",
"input": {
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"resolution": "720p",
"shot_type": "single"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Uwierzytelnianie, pełny schemat, odpytywanie i obsługę błędów opisuje dokumentacja API.




























