Você pediu uma tomada em primeira pessoa, mas o clipe mostra a outra pessoa por cima do ombro do observador, ou a câmera avança em direção ao rosto da outra pessoa. Comece procurando indicações de câmera conflitantes no quadro inicial e na descrição do movimento. Um close, contato visual direto e o rótulo “POV” não criam um ponto de vista. Um plano de cima especifica a altura da câmera; a primeira pessoa especifica de quem são os olhos que ela representa.
Nesta configuração à altura dos olhos, o quadro inicial vem da posição do observador. Mantenha a cabeça e o tronco dele fora do enquadramento; mãos ou antebraços podem entrar pela borda inferior, mas não são necessários para estabelecer a primeira pessoa. Descreva o que a outra pessoa faz separadamente do que a câmera faz.
Abaixo está uma configuração sentada à mesa de um restaurante para Seedance 2.5 image-to-video, seguida das correções para falhas visíveis, mãos em ação, um POV em movimento e como encadear tomadas. Todas as pessoas ilustradas são adultos fictícios. As ilustrações mostram a posição da câmera, não vídeos gerados.
Construa o primeiro quadro a partir do assento do espectador
A referência deve parecer uma foto tirada pelos olhos de um observador sentado. Do outro lado de uma mesa pequena está um homem adulto de blazer azul-marinho sobre uma camisa branca de colarinho aberto, com os olhos aproximadamente na altura da lente. A borda próxima da mesa percorre a parte inferior, e os antebraços do observador entram pelos cantos de baixo. Não aparecem a parte de trás da cabeça dele, a silhueta do ombro nem um operador de câmera separado.
Use esta descrição na sua ferramenta de imagens ou monte a mesma cena com fotografias autorizadas:
Photographic first-person view from a seated adult observer at a restaurant table beside a large window at dusk. A fictional adult man in a navy blazer over an open-collared white shirt sits directly across the small table at conversational distance, hands loosely clasped. Camera at the seated observer's eye height. His face and upper torso are unobstructed. Only the observer's relaxed forearms in dark sleeves enter from the lower corners, resting near the near table edge beside a white coffee cup. A candle in a glass holder and a small vase of flowers stand between them. Warm lamp light against a blue-hour city view through the window. The observer's head, face, shoulders and torso are outside the frame. One continuous room, no mirrors, no over-the-shoulder composition.
Um ombro na borda não é um detalhe inofensivo: ele informa ao modelo que a câmera pode estar atrás do observador. Recorte-o se o restante ainda formar uma vista coerente de alguém sentado. Se o recorte deixar um ângulo lateral ou elevado, reconstrua o quadro, pois a animação não reposicionará a câmera por você.

Ilustração: antebraços à frente podem reforçar o enquadramento em primeira pessoa; cabeça e ombro visíveis estabelecem uma vista externa.
Seedream 5.0 Flash tem preço anunciado de cerca de $0,029 por imagem, então refazer o quadro cinco ou seis vezes custa menos que desperdiçar um vídeo. A tarefa edit permite corrigir uma falha isolada, como um ombro indevido ou uma mão grande demais, sem reconstruir a cena. Antes de enviar ao Seedance 2.5 image-to-video, confira os limites de entrada: cada lado entre 300 e 6000 pixels, até 10 MB, JPG, PNG, WEBP ou GIF. A saída segue o formato da imagem estática; recorte-a primeiro na proporção de entrega. Use uma pessoa fictícia ou autorizada; a verificação de entrada do Seedance pode recusar uma foto de um rosto real identificável.
Faça um rascunho com uma pequena ação
No Seedance 2.5 image-to-video Playground, envie o quadro aprovado, escolha cinco segundos em 480p, desligue o som e cole o prompt de movimento. Deixe a imagem final vazia na primeira tomada. A saída segue o formato da imagem estática; o ponto de vista vem da imagem e das palavras, não de uma chave POV.
Copie este prompt:
One continuous five-second first-person shot from the seated observer's eyes. The adult man across the table looks toward the observer, gives one small smile and tilts his head slightly. The observer remains seated and still. Keep the camera position, eye height and framing unchanged. The man's hands stay on his side of the table. The observer's forearms remain low in the foreground. Stable warm lamp light. One take, no cut, no orbit, no zoom, no external view, no dialogue.
Seedance 2.5 image-to-video tem preço anunciado de $0,1234 por segundo em 480p, então o rascunho custa $0,617 por cinco segundos. Em 720p a tarifa é $0,2773 por segundo, ou $1,3865 pelo mesmo clipe, e em 1080p é $0,6823 por segundo ($3,4115). Com ou sem áudio, a tarifa é a mesma. Para um render final com som, ative generate_audio e acrescente "Sound: quiet restaurant ambience, cutlery, low voices; no music or captions." Faça o rascunho em 480p para verificar composição e movimento com baixo custo; quando o quadro e o texto estiverem definidos, renderizar em 720p ou 1080p acrescenta resolução, não muda a posição da câmera. Peça uma nova cotação para a tarefa real.
Evite "camera circles him", "cinematic reveal", "pull back to show the couple" e "over his shoulder". Cada frase solicita outro ponto de vista. O sujeito pode olhar para a xícara enquanto a câmera permanece parada; descrever esse olhar como movimento da câmera cria um conflito que você precisará resolver depois.

Ilustração: mudar o olhar do sujeito e mover a câmera produzem tomadas diferentes.
Corrija o sintoma visível em vez de acrescentar sinônimos de POV
| O que aparece no resultado | Provável conflito de instrução ou referência | Experimente esta revisão |
|---|---|---|
| A cabeça ou as costas do observador aparecem | A fonte ou a descrição de revelação sugere uma câmera externa | Substitua a fonte por uma vista da posição dos olhos; remova as indicações de revelação e por cima do ombro |
| A mesa é vista de cima | A câmera da referência está alta demais | Reconstrua na altura dos olhos de alguém sentado; mantenha os olhos do homem perto da altura da lente |
| A câmera se aproxima do rosto | Close ou avanço de câmera contradizem um observador parado | Remova essas indicações; mantenha a borda da mesa e o caixilho da janela como âncoras fixas da composição |
| O contato visual some, mas o enquadramento fica fixo | O personagem mudou o olhar, não o ponto de vista | Diga quando ele olha para o observador; não gere novamente só porque um olhar intencional sai do eixo |
| Entram mãos da pessoa errada | Ambas recebem instruções ambíguas como "you reach" | Nomeie "the man across the table" e "the observer's right hand" separadamente; anime primeiro apenas um par de mãos |
| Uma xícara bloqueia o rosto | O objeto começa alto ou a ação o eleva à linha de visão | Mantenha a xícara na mesa; use um pequeno deslizamento em vez de levantá-la em direção à lente |
| Aparece um celular, câmera ou reflexo do observador | "Selfie", "vlog", indicação de espelho ou superfície refletiva no quadro | Remova essas palavras, evite vidros e espelhos atrás do sujeito e diga que nenhuma câmera ou celular aparece na tela |
| A mão do observador some após o primeiro segundo | O sujeito soltou a mão ou saiu de alcance | Mantenha o contato contínuo no prompt ("keeps hold of the observer's hand") ou planeje um corte depois que a mão sair |
Altere a entrada conflitante antes de tentar outro seed; caso contrário, a próxima solicitação repetirá a mesma ambiguidade espacial.

Ilustração: a altura dos olhos muda a relação entre espectador, rosto e tampo da mesa.
Dê uma ação às mãos do observador
Uma tomada POV ganha presença quando as mãos do observador agem. A regra é a mesma do ponto de vista: estabeleça a situação no primeiro quadro e use o prompt só para o movimento seguinte. Se o observador deve segurar uma xícara, coloque-a na mão dele no quadro, com o antebraço entrando pela borda inferior, e peça um movimento lento:
From the seated observer's fixed eye position, the observer's right hand lifts the white coffee cup a few centimeters and sets it back on the saucer. The man across the table watches, then smiles. One continuous shot, unchanged camera height and distance, no cuts.
Entregas de objetos precisam de ações claramente atribuídas. Comece pela ação da outra pessoa, mais fácil de descrever espacialmente que uma troca coordenada. Isso exige outro primeiro quadro: a xícara deve começar do lado dele da mesa, perto das mãos, como na figura abaixo. Edite o quadro aprovado ou reconstrua-o para mover a xícara antes de animá-lo. Depois use este prompt:
From the seated observer's fixed eye position, the adult man across the table uses his right hand to slide the white cup a short distance toward the observer, then releases it. The cup stays on the tabletop throughout. The observer's hands remain resting at the near edge and do not touch the cup. The man briefly glances at the cup, then back toward the observer. One continuous shot, unchanged camera height and distance, no cuts.
Não peça ao observador para pegar a xícara neste primeiro teste: uma nova mão terá de entrar, tocar e assumir o objeto enquanto a outra o solta. Se a história precisa dessa troca, monte-a como uma segunda ação depois que a xícara parar, partindo de um quadro que já mostre ambas as mãos corretamente.

Ilustração: tocar, deslizar e soltar são ações do homem do outro lado da mesa; as mãos do observador permanecem separadas.
Quando a câmera precisa se mover
Uma tomada em primeira pessoa pode se mover se o movimento for do observador. O exemplo publicado na página de Seedance 2.5 Spicy image-to-video é uma boa referência: no quadro inicial, ela segura a mão do observador, e o prompt diz que ela fecha a mão em torno da mão do espectador e puxa, "breaking into a run and towing the camera after her", com movimento em primeira pessoa de câmera na mão.
A câmera acompanha aproximadamente na altura dos olhos de uma pessoa, com oscilação de câmera na mão; ela se vira para a lente rindo. Não há órbita nem vista aérea. A mão do observador aparece apenas no começo; este exemplo não mostra mãos dadas continuamente. Se esse contato importa, peça que ela continue segurando a mão e confira isso durante todo o clipe.
Para um POV caminhando, prepare um quadro com um caminho claro e peça movimento para a frente ao longo dele. Separe as instruções de movimento da indicação sonora:
One continuous first-person shot at standing eye height. The observer walks forward along the lit corridor at an easy pace; the camera advances at walking speed with a slight handheld sway and keeps the corridor centered. No one enters the frame from behind and the observer's body stays out of the frame. Sound: footsteps on tile and faint room tone.
Não acrescente uma instrução de câmera travada a um prompt de caminhada; elas se contradizem. Caminhar é outra tarefa de câmera, não uma versão mais forte de um close sentado. Evite pedir órbita, movimento do sujeito para trás e interação de mãos na mesma tomada.
Para uma saudação em pé, troque toda a configuração: câmera na altura dos olhos de um adulto em pé na porta, outro adulto dois passos dentro do cômodo, sem cadeira ou antebraços de alguém sentado à frente. Peça ao outro adulto que abra um pouco a porta e sorria enquanto o observador fica parado. Reutilizar o quadro do restaurante sentado com "standing doorway POV" pede ao modelo que resolva dois espaços incompatíveis.
Encadeie a próxima ação a partir do último quadro
Quando uma tomada parada funcionar, construa a sequência em tomadas curtas. Cada uma começa em um quadro que já tem a posição correta da câmera, de modo que o ponto de vista se mantém pela própria construção.
- No Seedance 2.5, defina
return_last_framecomotruee a resposta incluirá o quadro final do clipe como imagem separada. Use-o como próximoimage_url. - Em um clipe que você já tem, exporte o último quadro:
ffmpeg -sseof -0.2 -i input.mp4 -update 1 -q:v 2 last-frame.png. - Para terminar a tomada onde você quer, envie uma segunda imagem estática como
last_image_url, sempre junto comimage_url, e descreva a transição entre elas. Prepare ambas na mesma proporção, pois enquadramentos incompatíveis podem distorcer a composição final. Seedance 2.5 Spicy aceita o mesmo par. Você pode fornecer a mesma imagem nas duas pontas para pedir um retorno à composição; confira o final renderizado em vez de presumir uma correspondência exata.
Mais longo não é mais seguro. A própria página do modelo aconselha confirmar o movimento em cinco segundos antes de estender, pois anatomia e decoração se alteram quando uma tomada guiada por quadro fica mais longa; várias tomadas curtas editadas juntas se mantêm melhor que uma única tomada de 30 segundos.
Revise o clipe, depois corte ou renderize novamente
Se os primeiros quatro segundos mantêm a primeira pessoa e o último recua, corte antes da mudança de ponto de vista. Se um ombro indesejado permanece na borda o tempo todo, recortar só ajuda quando a cena central ainda é lida da posição do observador. Um recorte não reconstrói uma vista ausente da posição dos olhos nem corrige a perspectiva da mesa.
Revise o arquivo original baixado, não a miniatura do player, que pode esconder uma breve mudança de ponto de vista. Este comando extrai quatro imagens de revisão igualmente espaçadas de um clipe de cinco segundos:
ffmpeg -i input.mp4 \
-vf "fps=4/5,scale=480:-2,tile=2x2" \
-frames:v 1 pov-review.jpgUse a folha de contato para encontrar mudanças no enquadramento e depois reproduza o clipe inteiro para avaliar movimento e contato das mãos; um defeito breve pode cair entre as amostras. Para remover um final inutilizável, isto exporta só os primeiros quatro segundos e preserva uma faixa de áudio quando presente:
ffmpeg -i input.mp4 -t 4 -map 0:v:0 -map 0:a? \
-c:v libx264 -crf 18 -pix_fmt yuv420p -c:a aac pov-trimmed.mp4Os filtros estão documentados pelo FFmpeg.
Se uma cena precisa de um contraplano, faça um corte deliberado para outra tomada. Uma tomada por trás do observador pode funcionar na narrativa, mas é terceira pessoa. Mantenha a seção em primeira pessoa espacialmente coerente e depois corte para o novo ponto de vista como uma tomada própria. O guia de planejamento de planos mostra como inserir esses cortes em uma cena curta.
Escolha o caminho para sua tomada
- Você tem um quadro aprovado: Seedance 2.5 image-to-video, como acima. Ele ancora a composição inicial que você construiu; confira se o clipe a mantém.
- Você só tem palavras: text-to-video aceita uma descrição em primeira pessoa, mas o modelo decide onde fica a câmera, reduzindo seu controle da composição inicial. Comece pela posição da câmera ("the camera is a person seated at a table") antes da ação.
- O mesmo personagem aparece em várias tomadas POV: use reference-to-video com suas imagens estáticas ou siga o fluxo para personagens consistentes.
- A posição fixa dos olhos continua se deslocando: alguns modelos têm uma entrada real de trava de câmera; o guia de câmera fixa os lista e explica como descrever a trava nos modelos sem ela.
- Cenas em primeira pessoa para adultos: Seedance 2.5 Spicy é a edição sem censura ajustada com LoRA e lista primeira pessoa entre seus usos. Segue a mesma lógica de preparar o quadro primeiro, não tem entradas
aspect_rationemreturn_last_framee custa $0,216 por segundo em 480p, $0,432 em 720p e $1,08 em 1080p. O guia de prompts de vídeo sem censura tem prompts em primeira pessoa, e o guia de imagem para vídeo sem censura cobre a preparação da imagem estática.
Use a tomada POV aprovada no seu aplicativo
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"] = 'One continuous fixed-camera first-person shot from a seated observer. The man across the table gives one small smile. Keep the camera height, framing, room and clothing unchanged.'
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 essa mesma solicitação; uma nova tomada recebe outra chave. A documentação da Task API cobre a entrega dos 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 de Agent.







