소개
Wan 2.5 이미지→영상은 image_url로 보낸 스틸 이미지를 소리가 포함된 5초 또는 10초 클립으로 바꿉니다. 이미지가 피사체, 의상, 세트, 빛의 방향, 클립의 비율을 정하고, 선택 항목인 prompt(최대 1,500자)가 그 뒤에 일어나는 일을 설명합니다. 이 엔드포인트에는 화면비 필드가 없으므로 보내기 전에 이미지를 납품할 형태로 자르십시오. 스틸 이미지 없이 글로 된 아이디어만 있다면 텍스트 기반 엔드포인트를 사용합니다.
시작 자료에 따라 Wan 2.5 모드 선택하기
| 시작할 때 가진 자료 | 모드 |
|---|---|
| 작성한 장면이나 대본 | Wan 2.5 텍스트→영상 |
| 승인된 시작 이미지 | Wan 2.5 이미지→영상 |
핵심 기능 및 하이라이트
시작 프레임이 룩을 정합니다
image_url은 최대 20MB의 JPEG, PNG, BMP, WebP를 받으며 각 변은 240~8,000픽셀이어야 합니다. 라벨, 실루엣, 의상처럼 파일에 이미 보이는 요소는 다시 설명할 필요가 없으므로 프롬프트는 움직임, 카메라, 소리에 집중할 수 있습니다.
영상과 함께 생성되는 오디오, 또는 가진 트랙에 맞춘 타이밍
모든 클립은 영상과 함께 생성된 소리를 담아 반환됩니다. 녹음한 대사나 음악 큐로 타이밍을 정하려면 audio_url에 WAV 또는 MP3(3~30초, 최대 15MB)를 추가합니다. 얼굴은 프레임에서, 입의 타이밍은 오디오에서 옵니다. 클립보다 긴 트랙은 끝부분이 잘리고, 짧으면 나머지 구간이 무음이 됩니다.
두 가지 길이와 세 가지 해상도
duration_seconds는 정확히 5 또는 10이고, resolution은 480p, 720p(기본값), 1080p입니다. 높은 해상도일수록 초당 요금이 올라가고 반환까지 시간이 더 걸립니다. 짧은 클립이 손과 머리카락을 더 잘 유지하므로 10초로 넘어가기 전에 5초에서 움직임을 확정하십시오.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
image_url | 예 | 첫 프레임입니다. 피사체, 의상, 세트, 빛의 방향, 클립 비율이 모두 여기서 나오니 먼저 크롭하세요. 1자 이상 |
prompt | 아니요 | 선택입니다. 프레임 다음에 일어나는 일을 적습니다. 1500자 이하 |
negative_prompt | 아니요 | 나오면 안 되는 것을 적습니다. 두 번째 인물, 자막, 프레임에서 자꾸 따라오는 소품 같은 것들입니다. 500자 이하 |
resolution | 아니요 | 480p, 720p, 1080p이며 기본값은 720p입니다. 높은 등급일수록 초당 단가가 높고 결과가 늦게 돌아옵니다. |
duration_seconds | 아니요 | 정확히 5 또는 10 중 하나입니다. 짧을수록 손과 머리카락이 덜 흐트러지니 먼저 5초로 모습을 확정하세요. |
audio_url | 아니요 | 클립이 따라갈 대사나 음악 큐입니다. 말과 비트가 예상한 자리에 떨어집니다. 1자 이상 |
enable_prompt_expansion | 아니요 | 기본으로 꺼져 있습니다. 한 줄짜리 아이디어라면 켜고, 이미 구체적인 동작을 적었다면 꺼 두세요. 기본값: |
seed | 아니요 | 0에서 2147483647까지입니다. 같은 프레임으로 해상도나 길이를 비교할 때 고정하고, 무작위로 하려면 0을 보내지 말고 필드를 비워 두세요. |
요금
| 사양 | 요금 |
|---|---|
| $0.045 / 초 |
| $0.09 / 초 |
| $0.135 / 초 |
활용 사례
제품 사진 한 장으로 만드는 제품 모션
공개된 세럼 병 예시는 제품 스틸을 보내고, 창문 빛 한 줄기가 유리 위를 미끄러지는 동안 카메라가 천천히 4분의 1 바퀴 호를 그리도록만 요청합니다. 병 자체는 움직이지 않습니다. 프레임이 이미 라벨과 실루엣을 고정하므로 프롬프트는 빛과 움직임만 담당하며, 720p로 5초 동안 렌더링됩니다.
녹음한 대사를 말하는 인물 사진
승인된 인물 사진을 image_url로, 대사 녹음을 audio_url로 보냅니다. 인물의 모습은 이미지에서, 입의 타이밍은 파일에서 오므로 검토는 립싱크가 아니라 전달력에 집중됩니다.
디테일을 지키는 긴 스튜디오 테이크
슬립 드레스 예시는 스튜디오 인물 사진에서 1080p로 10초를 만듭니다. 고정된 카메라 앞에서 무게 중심을 옮기고, 렌즈 쪽으로 몸을 돌리고, 천천히 두 걸음 다가옵니다. 네거티브 프롬프트 ‘extra people, text, jewellery changes’가 긴 길이 동안 액세서리가 바뀌거나 인물이 늘어나는 것을 막습니다.
비와 물처럼 소리의 출처가 보이는 장면
우산 예시에서는 두 사람이 거의 움직이지 않고, 머리 위 우산을 빗줄기가 두드립니다. 움직임은 물이 담당하고 소리에는 눈에 보이는 출처가 있습니다. 이처럼 끊김 없이 이어지는 사건이라면 대개 5초면 충분합니다.
프롬프트 가이드 및 실전 팁
먼저 프레임 준비하기
납품할 형태로 자르고, 원하는 의상, 세트, 빛이 이미지에 이미 담겨 있는지 확인합니다. 클립은 이미지의 비율을 유지하고 룩도 물려받으므로 스틸의 실수는 그대로 영상으로 이어집니다.
움직임만 설명하기
프롬프트는 선택 사항이지만, 분명한 동작 한 줄이 있으면 움직임이 훨씬 안정됩니다. 동작 하나, 카메라 움직임 하나, 소리에 대한 메모를 씁니다. 두 번째 인물, 자막, 소품처럼 프레임이 자꾸 되살리는 요소는 negative_prompt에 넣습니다. 한 줄 아이디어라면 enable_prompt_expansion을 켜고, 프롬프트가 이미 정확한 동작 묘사라면 꺼 두십시오.
공개 예시 응용하기
공개 예시의 duration_seconds 5, resolution 720p에서 시작하고, image_url에는 공개적으로 접근할 수 있는 자신의 이미지를 지정합니다.
The camera arcs a slow quarter turn around the dropper bottle while a soft band of window light slides across the glass and the liquid inside catches it. The bottle itself does not move. Quiet room tone, no music.
프레임이 라벨과 실루엣을 고정하고, 프롬프트는 카메라의 호와 움직이는 빛만 요청합니다.
시드를 고정해 테이크 비교하기
같은 프레임에서 해상도나 길이를 비교할 때는 seed를 고정하고 한 번 실행할 때 한 필드만 바꿉니다. 무작위로 뽑고 싶다면 0을 보내지 말고 필드를 생략합니다. 납품 전에는 소리를 켜고 클립 전체를 재생하십시오.
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.5/image-to-video",
"input": {
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"resolution": "720p"
}
}'
# 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"
인증, 전체 스키마, 폴링과 오류 처리는 API 레퍼런스에서 확인하세요.




























