Wprowadzenie
Kling 2.6 Motion Control kopiuje ruchy, mimikę i gesty z wideo sterującego na postać z nieruchomego zdjęcia. Podaj jedno wyraźne zdjęcie osoby i klip o długości 3 do 30 sekund pokazujący występ, a model zwróci ciche wideo w 720p lub 1080p, trwające dokładnie tyle, co klip sterujący.
Wybierz tryb Kling 2.6 według materiału startowego
| Co masz na starcie | Tryb |
|---|---|
| pisaną scenę | Kling 2.6 – tekst na wideo |
| zatwierdzony obraz początkowy | Kling 2.6 – obraz na wideo |
| klip sterujący i zdjęcie postaci | Kling 2.6 Motion Control |
Najważniejsze funkcje
Własne zdjęcie postaci wygrywa we wszystkim, czego klip sterujący nie dyktuje
W naszym teście układ hip-hopowy wykonany przez jedną tancerkę został nałożony na innego mężczyznę w granatowym trzyczęściowym garniturze: ruchy zgadzały się krok w krok, a jego garnitur, mokasyny, twarz i betonowy loft z własnego zdjęcia przeniosły się w całości, zamiast jednolitego tła studia z klipu sterującego.
Ciche wyjście, długość ustalona przez klip sterujący
Ten endpoint nie ma pola audio – wynik renderuje się bez dźwięku – ani pola czasu trwania, ponieważ wyjście zawsze odpowiada długości klipu sterującego, od 3 do 30 sekund.
Parametry żądania
| Parametr | Wymagane | Uwaga |
|---|---|---|
prompt | Nie | Opcjonalne. Użyj go tylko dla tego, czego klip sterujący jeszcze nie pokazuje – scenerii do zachowania, szczegółu stroju, wszystkiego, co ma pozostać stałe. do 2500 znaków |
image_url | Tak | Postać do animacji: jedno wyraźne zdjęcie całej sylwetki lub górnej połowy ciała. Tylko JPEG lub PNG. |
video_url | Tak | Klip sterujący, 3 do 30 sekund: ruchy, mimika i gesty do skopiowania. Wynik jest dokładnie tak długi, jak ten klip, i nie ma dźwięku. |
resolution | Nie | 720p lub 1080p. Wyższe poziomy kosztują więcej za sekundę. |
Cennik
Rozliczane za sekundę długości klipu sterującego – wyjście trwa dokładnie tyle, co Twoje wideo wejściowe.
| Specyfikacja | Cena |
|---|---|
| $0.069 / sekundę |
| $0.112 / sekundę |
Zastosowania
Ponowne wykorzystanie jednego występu na kilku postaciach
Nakręć lub wygeneruj jeden klip sterujący raz, a potem uruchom go na różnych zdjęciach postaci, by przenieść ten sam układ, chód czy gest bez animowania go od zera za każdym razem.
Dodanie ruchu do nieruchomego projektu postaci
Ożyw postać, którą już zaprojektowałeś lub wygenerowałeś, istniejącym występem, gdy ruch ma wyglądać na celowy, a nie swobodny.
Wskazówki
Powiedz, co zachować, nie co skopiować
Klip sterujący już niesie ruchy, mimikę i gesty – pole promptu jest na to, czego on nie może pokazać, najczęściej którą scenerię zachować: własny pokój postaci, a nie ten z klipu sterującego.
Dopasuj kadrowanie klipu sterującego i zdjęcia
Nasz test połączył klip sterujący z całą sylwetką ze zdjęciem postaci z całą sylwetką. Wyraźna niezgodność kadrowania między nimi – na przykład zdjęcie górnej połowy ciała sterowane klipem z całą sylwetką – to rodzaj wejścia wart wcześniejszego przetestowania w niższej rozdzielczości.
Sprawdź, czy oba wejścia są wystarczająco szerokie
Zarówno zdjęcie postaci, jak i klip sterujący potrzebują około 720 pikseli lub więcej na każdym boku; klip sterujący poniżej tej wartości zostaje odrzucony, zanim zadanie się zacznie, a nie po tym, jak już za nie zapłacisz. Sprawdź obie wartości klipu sterującego, bo wideo może przejść pod względem szerokości, a i tak zawieść na wysokości, jeśli zostało nagrane w nietypowym kadrze.
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": "kling/2.6/character-animation",
"input": {
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p",
"video_url": "https://example.com/reference.mp4"
}
}'
# 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.











