Você tem uma imagem e quer animá-la com Seedance 2.5. Antes de renderizar, decida sua função: o primeiro quadro exato ou uma referência para uma tomada que o modelo compõe por conta própria. As duas opções usam tarefas diferentes; escolher a função errada pode gerar uma abertura diferente da pretendida.
Resumindo: use image-to-video quando a imagem precisar ser o primeiro quadro e reference-to-video quando ela fornecer pessoa, roupa ou cenário para uma nova composição. O Seedance 2.5 base oferece ambos; Spicy só anima uma imagem inicial. Nos testes de setembro de 2026, ambos permitem trabalho adulto sem censura. Spicy adiciona uma opção 4K ampliada e custa de 56% a 75% mais por segundo (comparação). As próprias verificações de entrada do Seedance ainda podem recusar rostos identificáveis ou solicitações relacionadas a beijos.
Escolha o caminho
| O que você quer dizer com “transformar esta imagem em vídeo” | Use | Você envia | A partir de (5 s, 480p) |
|---|---|---|---|
| “Comece exatamente nesta imagem, depois anime.” | Seedance 2.5 image-to-video | image_url, prompt opcional, last_image_url opcional | $0,62 |
| “O mesmo, mas preciso de um arquivo 4K.” | Seedance 2.5 Spicy image-to-video | Os mesmos campos; o clipe assume o formato da imagem | $1,08 (4K: $10,80) |
| “Use estas imagens para pessoa, roupa ou cenário e componha uma nova abertura.” | Seedance 2.5 reference-to-video | Até 30 imagens, 10 clipes, 10 arquivos de áudio e um prompt obrigatório | $0,62 (sem clipe de referência) |
| “Comece em A e termine em B.” | Image-to-video em qualquer um dos modelos | image_url mais last_image_url | como acima |
O modo de referência e o modo de quadros são mutuamente exclusivos: reference-to-video não tem campo de primeiro ou último quadro, e adicionar um último quadro a image-to-video não transforma a primeira imagem em uma referência livre. A função da imagem define a tarefa, não a quantidade de arquivos.
Veja um primeiro quadro virar uma tomada
Exemplo 1: uma imagem já composta (Seedance 2.5)

Vidro, chuva e composição ampla já estão na imagem inicial fornecida.
A imagem contém vestido, cacos, chuva, luz fria e enquadramento amplo. A orientação de movimento de cinco segundos em 720p mantém a cena congelada por um instante, depois faz a câmera avançar rapidamente enquanto vidro e chuva entram em movimento.
Exemplo 2: um primeiro quadro Spicy com um movimento tranquilo
Para um clipe de moda sugestivo, deixe a imagem definir estilo, pose e clima e use o prompt para um movimento da pessoa e um da câmera.

Seedream 5.0 Pro, 1k, 16:9. Esta é a imagem inicial exata usada no clipe Spicy abaixo.
A artista, o casaco vermelho e o terraço continuam reconhecíveis; o casaco e a pose se movem na tomada, mas os dois passos do prompt mal aparecem. Quando uma ação importa, dê a ela seu próprio intervalo (veja prompts com marcação de tempo) em vez de colocá-la na mesma frase que outros movimentos.
Prepare o primeiro quadro
A imagem define o limite de qualidade: corrija os problemas aqui, não no prompt.
- O sujeito está legível. Rosto, pose e objetos necessários à ação estão no quadro, sem cortes na borda.
- A posição da câmera já faz sentido. Uma visão por trás exige uma ação diferente de um retrato voltado para a câmera. Recorte primeiro; não peça ao modelo para inventar outro ponto de vista.
- Há espaço para a ação. Um retrato fechado comporta um olhar ou uma inclinação lenta; caminhar exige chão na direção do movimento.
- O clima está no quadro. Luz, local e estilo definem mais o tom que os adjetivos do prompt. Uma nova sala ou grande troca de roupa fica mais clara com uma nova imagem preparada ou um quadro final compatível do que com mais adjetivos.
Limites de entrada e saída: duração de 4–30 segundos (padrão 5); 480p, 720p (padrão) ou 1080p, além de 4K no Spicy. Cada lado da imagem deve ter 300–6.000 pixels, máximo de 10 MB, em JPG, PNG, WEBP ou GIF. Recorte para o formato de entrega antes de enviar: image-to-video base só aceita adaptive, e Spicy não tem campo de proporção. Seedance pode recusar entradas com rostos identificáveis; um 422 sem explicação não identifica a causa. Para criar a imagem, use o guia de prompts do Seedance 2.5.
Escreva o prompt de movimento
Em image-to-video, o prompt é opcional, mas é onde você dirige a tomada. Não descreva de novo o que a imagem já mostra; diga o que muda na ordem vista pelo público: ação, câmera, som. Mantenha uma instrução principal de câmera, adicione “then” entre etapas e diga o que preservar (“keep her face, outfit and rooftop unchanged”).
Uma primeira tentativa curta:
Start on the supplied rooftop portrait. The adult woman turns toward the camera as the wind lifts her coat, takes two measured steps to camera-right, then holds eye contact. One slow camera push; keep her face, outfit and rooftop recognisable. Soft city ambience.
Abra este prompt no Seedance 2.5 Spicy
Prompts com marcação de tempo. Seedance aceita intervalos em segundos inteiros, e a página do modelo os recomenda quando o movimento tem etapas. Use intervalos contínuos, sem lacunas, termine o último em duration_seconds e mantenha uma ação por intervalo:
Continue from the supplied rooftop portrait in one continuous shot.
0-2s: The adult woman turns toward the camera as the wind lifts her coat. Camera fixed.
2-4s: She takes two measured steps to camera-right. Slow push in.
4-5s: She holds eye contact and the coat settles. Hold the framing.
Keep her face, outfit and the rooftop unchanged. Sound: soft wind and distant city ambience, no music.Se o clipe se desviar, revise um elemento por vez: enquadramento, ação e depois duração. Mantenha seed fixo ao comparar mudanças no prompt. Defina a direção em cinco segundos antes de estender ou montar várias tomadas curtas.
Primeiro e último quadro: loops e revelações
Adicione last_image_url e o modelo passará da primeira imagem para a segunda. Prepare ambas na mesma proporção, mantenha câmera e luz constantes e altere um estado claro (fechado para aberto, roupa A para roupa B), ou o meio do clipe vira um corte. Descreva a transição, não só o destino, e dê à pausa final seu próprio intervalo. Envie a mesma imagem duas vezes para dar ao loop um ponto de retorno; confira e apare ou aplique uma fusão na junção se os quadros inicial e final não coincidirem. O último quadro só é aceito junto com image_url.
Para sequências maiores que uma tomada, a versão base 2.5 pode devolver o quadro final (return_last_frame: true, sem mudança de preço); use-o como imagem inicial da próxima tarefa image-to-video. No Spicy, exporte você mesmo o último quadro. Vídeos sem censura mais longos explica toda a sequência.
Reference-to-video: uma nova tomada a partir do seu material
Use quando pessoa, roupa ou cenário importarem mais que o enquadramento inicial. As imagens de referência são numeradas na ordem de envio; o prompt atribui os papéis, então identifique cada imagem (o anúncio do Seedance 2.5 da ByteDance mostra referências de imagem nomeadas em ação).
Use the adult performer from @Image1 and the rooftop from @Image2. Compose a new opening shot as she steps from the entrance, pauses, turns to camera, then holds. One continuous medium shot with a slow push and soft wind ambience.
Abra este prompt no Seedance 2.5 reference-to-video

Esquerda: referência de personagem e roupa. Direita: referência de local e iluminação. Ambas orientam uma nova abertura em vez de fornecer seu primeiro quadro exato.
O resultado abre com uma nova tomada da entrada, levando casaco vermelho, vestido preto e terraço a uma caminhada em direção à câmera. As referências orientam personagem, roupa e cenário; descreva cada papel separadamente quando a encenação importar.
Limites das entradas de referência:
- Imagens: até 30, com os mesmos limites acima. Comece com poucas vistas distintas de uma personagem em vez de muitos quadros quase iguais; mostre a roupa nas imagens da pessoa.
- Clipes: até 10, de 2 a 30 segundos cada, 30 segundos no total, MP4, WEBM ou QuickTime, até 90 MB cada. Fornecem movimento, ritmo ou linguagem de câmera, e seus segundos são somados à quantidade cobrada. Com um clipe, a tarifa por segundo é menor ($0,0738 em 480p, $0,1659 em 720p, $0,4082 em 1080p, contra $0,1234, $0,2773 e $0,6823 sem clipe), mas vale para a duração de saída mais a referência faturada. Uma saída de 5 segundos tem um mínimo de referência de 4 segundos: uma referência de 2 segundos é cobrada como 4, então (5 + 4) × $0,0738 = $0,6642, cerca de $0,66. Uma referência de 10 segundos continua com 10: (5 + 10) × $0,0738 = $1,11, contra $0,62 sem clipe. Não peça para editar nem mudar o estilo da filmagem em si; Seedance tratará como edição de vídeo e a tarefa falhará.
- Áudio: até 10 arquivos MP3 ou WAV, de 2 a 30 segundos cada, 30 segundos no total. Orientam o ritmo;
generate_audioainda decide se a saída tem trilha sonora. - Proporção:
adaptivepor padrão; indique uma proporção (21:9 a 9:16) apenas se o formato de entrega for obrigatório, depois confira se o sujeito necessário cabe no recorte de saída.
Quanto custa um clipe e em qual modelo começar
Preço por segundo, com áudio incluído sem custo extra. Cada página de modelo mostra o preço atual antes do envio.
| Resolução | Base 2.5 · 5 s | Spicy · 5 s | Base 2.5 · 30 s | Spicy · 30 s | Acréscimo do Spicy |
|---|---|---|---|---|---|
| 480p | $0,62 | $1,08 | $3,70 | $6,48 | +75% |
| 720p | $1,39 | $2,16 | $8,32 | $12,96 | +56% |
| 1080p | $3,41 | $5,40 | $20,47 | $32,40 | +58% |
| 4K | não disponível | $10,80 | não disponível | $64,80 | somente Spicy |
Faça uma prévia de cinco segundos em 480p no base 2.5 se for finalizar nele. Para entregar em 4K no Spicy, confira primeiro uma tomada Spicy em 480p: trocar de modelo pode mudar a encenação. O nível 4K amplia um render 1080p, sem corrigir uma fonte desfocada. Reserve vários minutos para ambos. Spicy não oferece geração por texto nem por referências.
Experimente no Playground e depois use a API
- Abra o Playground Seedance 2.5 image-to-video e adicione o primeiro quadro em Input image. Closing frame é opcional.
- Cole o prompt de movimento, defina Duration em cinco segundos e Resolution em 480p, ative Generate audio apenas se precisar de som e selecione Run model.
- Refine o movimento no mesmo modelo. Para uma tomada nova, use o Playground reference-to-video e adicione imagens em Reference images.
Defina SPICY_API_KEY no ambiente e SPICY_IMAGE_URI como a URL acessível da imagem inicial ou o URI spicy:// enviado. Este exemplo em Python 3 envia uma nova tomada depois de você confirmar o preço.
import json
import os
import urllib.request
import uuid
base = "https://api.spicyapi.ai/api/v1"
headers = {"Authorization": "Bearer " + os.environ["SPICY_API_KEY"],
"Content-Type": "application/json", "User-Agent": "SpicyAPI-Blog/1.0"}
settings = {
"duration_seconds": 5,
"resolution": "480p",
"generate_audio": False
}
settings["prompt"] = 'A slow camera push toward the subject. Keep the setting and clothing unchanged. One continuous shot.'
settings["image_url"] = os.environ["SPICY_IMAGE_URI"]
payload = {"model": "bytedance/seedance-2.5/image-to-video", "input": settings}
def post(path, body):
request = urllib.request.Request(base + path, json.dumps(body).encode(), headers)
with urllib.request.urlopen(request, timeout=60) as response:
result = json.load(response)
if result.get("code") != 200:
raise RuntimeError(result)
return result["data"]
quote = post("/jobs/quote", payload)
if input(f"Maximum charge ${quote['maxCharge']}. Type yes to generate: ") != "yes":
raise SystemExit("Stopped before generation")
headers["Idempotency-Key"] = str(uuid.uuid4())
print("Request key:", headers["Idempotency-Key"], flush=True)
task = post("/jobs/createTask", {**payload, "quoteId": quote["quoteId"],
"expectedCost": quote["estimatedCost"]})
print("Task ID:", task["taskId"])Guarde a chave de solicitação impressa para recuperar aquela mesma solicitação; uma nova tomada recebe uma nova chave. Para reference-to-video, altere model para bytedance/seedance-2.5/reference-to-video, substitua image_url por uma lista reference_image_urls e mantenha o prompt, obrigatório nesse caso. A documentação da API de tarefas explica a entrega de resultados e a recuperação.
Para tomadas repetidas, deixe um Agent usar um arquivo de entrada aprovado: CLI spicyapi tasks create --model bytedance/seedance-2.5/image-to-video --input-file input.json --wait; MCP peça para chamar spicyapi_task_create com esse modelo e entrada; Skill peça “Use the spicyapi Skill to generate this approved shot and return the result.” CLI e MCP mostram o preço antes da criação. Veja a documentação de integração com Agent.
Revise o clipe e corrija o que você vê
Assista ao clipe inteiro, não à miniatura, nesta ordem: o primeiro quadro corresponde à imagem? O primeiro movimento segue o pedido? O sujeito continua reconhecível? O conteúdo pretendido ainda está no quadro? O final serve para a edição? Uma tarefa concluída ainda pode enquadrar uma ação íntima de modo mais moderado que o solicitado, então avalie quadros, não status. Salve prompt, imagem, modelo e saída escolhida juntos para saber o que mudou entre tentativas.
| O que você vê | Próxima alteração |
|---|---|
| O clipe abre com recorte errado ou pose estranha | Corrija a imagem; recorte para o formato final antes de enviar |
| Roupa, sala ou aparência mudam cedo | Remova frases do prompt que contradizem a imagem; coloque o visual em uma nova imagem inicial |
| A imagem aparece por um instante e corta para outra cena | O prompt descreve outra cena; descreva a cena da imagem e adicione “one continuous shot, no cuts” |
| A câmera se afasta da ação | Nomeie o enquadramento e uma ação a preservar; remova movimentos de câmera concorrentes |
| O movimento está quase congelado | O prompt se concentra no que não deve acontecer; descreva o que acontece, etapa por etapa |
| Um clipe longo se desvia ou para | Teste uma etapa em 4 a 5 segundos e planeje tomadas conectadas |
| A cena adulta é suavizada | Defina o nível na imagem, compare os quadros com a orientação e altere uma variável |
| Recusa antes de qualquer clipe | Confira se a imagem mostra uma pessoa adulta, gerada ou com consentimento, e se a tarefa corresponde ao seu papel; uma tarefa que falhou normalmente libera o valor reservado, e a referência de erros lista as exceções |
Perguntas frequentes
Image-to-video precisa de prompt?
Não. A imagem é a única entrada obrigatória. Sem prompt, o modelo escolhe o movimento; escreva um quando ação ou câmera importarem.
Posso usar mais de uma imagem como primeiro quadro?
Não. Image-to-video aceita uma imagem inicial e uma final opcional. Para várias imagens, use reference-to-video, que aceita até 30 e as nomeia pela ordem (@Image1, @Image2).
Posso criar um loop?
Sim: envie a mesma imagem como image_url e last_image_url e confira a junção (veja a seção de primeiro e último quadro).
Seedance 2.5 pode gerar vídeos NSFW?
Sim. Base 2.5 e Spicy permitem animação adulta sem censura a partir de uma imagem. Escolha pelo papel da entrada e pelas necessidades de saída, sem esperar que Spicy desbloqueie conteúdo: comparação de versões e testes do Seedance sem censura.
Por que a solicitação falhou antes de gerar um vídeo?
Separe uma recusa no envio de uma tarefa criada e que falhou depois, então leia o código na referência de erros. Confira se a rota corresponde ao papel da imagem, se ela respeita tamanho e formato e se a URL pode ser acessada publicamente; no Playground, confirme que o envio terminou. Se a solicitação expirou e você não sabe se foi aceita, reenvie somente com a mesma chave de idempotência.
Qual caminho escolher?
Use Seedance 2.5 image-to-video quando a imagem precisar continuar como primeiro quadro e faça a prévia em 480p. Use Seedance 2.5 reference-to-video quando imagens, clipes ou áudio devam orientar uma nova tomada. Faça uma prévia separada em baixa resolução no Seedance 2.5 Spicy image-to-video apenas se precisar de 4K.







