Introdução
O Seedance 2.0 Spicy imagem para vídeo transforma a imagem que você envia no primeiro quadro e a anima por até 15 segundos, com som na mesma passada. image_url é o único campo obrigatório; o prompt dirige o movimento em vez de defender o conteúdo.
O Seedance 2.0 Spicy é a variante sem censura ajustada com LoRA e guiada por imagem da linha Seedance 2.0 da ByteDance, publicada como um único endpoint de imagem para vídeo. Os clipes duram de 4 a 15 segundos em 480p, 720p, 1080p ou 4K.
Recursos e destaques
O que a imagem mostra já está no clipe
Figurino, pose, pele, vapor e luz chegam com a imagem antes de o prompt ser lido. Por isso o trabalho guiado por imagem passa por briefings que uma página em branco não passaria, e o prompt fica livre para dirigir o movimento.
Adaptativo por padrão, seis formatos fixos quando precisar
Diferente do Seedance 2.5 Spicy, esta família publica aspect_ratio, que vem em adaptive: a saída mantém a geometria do quadro inicial, então uma imagem vertical continua vertical, sem corte. Indique 9:16, 1:1 ou 21:9 só quando o destino exigir, e confira se o sujeito continua dentro da área segura.
Escolha onde o clipe termina
last_image_url fixa o último quadro além do primeiro, então o modelo precisa chegar a uma imagem que você escolheu. Envie a mesma imagem duas vezes e o clipe começa e termina nela, num loop perfeito; envie duas imagens diferentes para uma revelação ou uma troca de visual. Imagens muito diferentes em enquadramento ou luz dificultam controlar o meio do clipe.
Parâmetros da requisição
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
image_url | Sim | Obrigatório, e o único campo obrigatório. |
prompt | Não | Opcional aqui, e é esse o ponto: o quadro de abertura já fixa o que está na tela, então o prompt só precisa dirigir movimento — a ação, para onde vão os olhos, a deriva de câmer… no máximo 5000 caracteres |
last_image_url | Não | Quadro de fechamento opcional. Ele decide a imagem em que o plano aterrissa: uma transição, um par antes/depois ou um loop que abre e fecha no mesmo still. |
aspect_ratio | Não | Enquadramento de saída, adaptive por padrão, que segue a proporção do quadro que você forneceu e poupa um recorte prévio. |
resolution | Não | Resolução de saída: 480p, 720p por padrão, 1080p ou 4k. |
duration_seconds | Não | Duração do clipe finalizado em segundos inteiros, de 4 a 15, padrão 5, e a quantidade cobrada. |
generate_audio | Não | Se uma trilha nativa é renderizada em sincronia com a imagem. Vem ligada. Valor padrão: |
seed | Não | Seed inteiro; omita e cada execução sorteia o seu. Fixe com todo o resto constante para julgar o que uma edição de prompt realmente mudou. |
Preços
| Especificação | Preço |
|---|---|
| $0.114 / segundo |
| $0.228 / segundo |
| $0.57 / segundo |
| $1.14 / segundo |
Casos de uso
Cenas que outras plataformas recusam
Vapor e condensação, interiores próximos, casais de qualquer gênero e pontos de vista em primeira pessoa não são revisados do nosso lado. Coloque o conteúdo no quadro inicial e o Seedance 2.0 Spicy anima o que a imagem realmente mostra.
Cortes verticais para um feed pago
Deixe aspect_ratio em adaptive e uma imagem 3:4 ou 9:16 volta no próprio formato, pronta para o celular. De quatro a seis segundos em 720p bastam para uma miniatura do feed; guarde 1080p ou 4K para a peça paga.
Um ensaio de fotos existente em movimento
Passe cada foto boa de um ensaio que você já tem com cinco segundos em 720p, descarte as que se mexem mal e depois gere as que sobraram mais longas e maiores. Cada passada é uma tomada nova, então fique com a melhor de algumas.
Guia de prompt e dicas práticas
Coloque o conteúdo no quadro inicial
Fotografe a imagem ou gere. Figurino, pose, luz e enquadramento precisam estar ali, porque a resolução não acrescenta detalhe que o quadro nunca teve e o prompt não coloca conteúdo numa imagem que não o mostra.
Saiba onde o filtro do Seedance ainda atua
A camada de segurança própria do Seedance também roda antes da geração neste endpoint. Uma redação de beijo é recusada antes de renderizar um quadro, enquanto a mesma cena descrita como um sussurro no ouvido ou testas encostadas passa. Coloque a ação no quadro, não na frase. last_image_url só é aceito junto com image_url, nunca sozinho.
Adapte o exemplo incluído
O exemplo publicado usa duration_seconds 5, generate_audio true e resolution 720p.
She wipes a wider streak through the fogged mirror, steam curling back across the glass, then leans in closer to her reflection and exhales, the robe slipping a little further off her shoulder. Slow push toward the mirror, warm vanity bulbs, water dripping.
O quadro inicial traz a roupa, o vapor e o espelho, e o prompt faz apenas ela se mover. Nada nele descreve a roupa, porque o quadro já fez isso.
Amplie o que funcionou
Faça um rascunho em 720p com cinco segundos para conferir enquadramento e movimento. Uma passada mais longa ou maior é uma tomada nova, não uma ampliação do rascunho, então, quando o prompt estiver certo, gere a versão final em 1080p ou 4K e espere escolher entre algumas.
Início rápido da 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": "bytedance/seedance-2.0-spicy/image-to-video",
"input": {
"aspect_ratio": "adaptive",
"duration_seconds": 5,
"generate_audio": true,
"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"
Consulte a referência da API para autenticação, esquema completo, polling e tratamento de erros.
















