Introdução
daVinci-MagiHuman Imagem para vídeo inicia um clipe a partir da sua foto e lhe dá movimento e voz. O daVinci-MagiHuman é um modelo aberto de 15 bilhões de parâmetros da Sand.ai e da SII-GAIR que gera a imagem e a trilha sonora juntas. A foto é o quadro inicial; o prompt diz o que acontece em seguida e, entre aspas, o que a pessoa diz. Este endpoint devolve de 5 a 10 segundos em 256p, 720p ou 1080p, na horizontal 16:9 ou na vertical 9:16, e aceita a sua própria fala ou música como audio_url.
Escolha um modo pelo material de partida
| O que você tem | Modo |
|---|---|
| uma descrição escrita | daVinci-MagiHuman Texto para vídeo |
| uma foto para partir, com ou sem o seu próprio áudio | daVinci-MagiHuman Imagem para vídeo |
Recursos e destaques
Um quadro inicial que se move e fala
O clipe começa da sua imagem. Na nossa execução sem arquivo de áudio, ela se afastou do mar, ajeitou o cabelo atrás da orelha e disse a fala entre aspas; a transcrição da trilha bateu palavra por palavra.
A sua própria voz
Com audio_url definido, o vídeo é gerado em sincronia com a sua fala ou música, em vez de inventar uma voz. Na nossa execução com um trecho falado de 5 segundos, a boca acompanhou o áudio enviado, com meio sorriso e movimento de sobrancelha, e o rosto continuou fiel ao retrato de entrada.
O que medimos
Rodamos dois clipes de imagem para vídeo em 720p e 16:9, ambos com 5,0 segundos e ambos com cerca de 1358 x 678 a 25 fps, então 720p não é exatamente 1280 x 720. A execução sem áudio levou cerca de 1 min 45 s; a execução com um trecho falado de 5 segundos como audio_url levou cerca de 3 min 7 s. Não rodamos este endpoint em 1080p, em 9:16 ou com uma gravação de duração diferente do clipe.
Resoluções e formatos
resolution é 256p, 720p (o padrão) ou 1080p, e aspect_ratio é 16:9 (o padrão) ou 9:16. O modelo gera em uma resolução base baixa, e a própria etapa de super-resolução produz as faixas mais altas. Faixas mais altas custam mais por segundo; formato e som não alteram o preço.
Parâmetros da requisição
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
prompt | Sim | Descreva o que acontece depois da foto: o que a pessoa faz e, entre aspas, o que diz. Com |
image_url | Sim | O quadro inicial. Um link público que possa ser baixado diretamente; o clipe parte dessa foto. |
audio_url | Não | Opcional. Um link público para um arquivo de fala ou de música; o vídeo é gerado em sincronia com ele, em vez de inventar uma voz. |
aspect_ratio | Não | 16:9 (o padrão) ou 9:16. Nossas execuções de imagem para vídeo usaram 16:9. |
resolution | Não | 256p, 720p (o padrão) ou 1080p. Faixas mais altas custam mais por segundo. |
duration_seconds | Não | De 5 a 10 segundos, padrão 5, cobrados por segundo. |
seed | Não | Inteiro opcional. A mesma seed com as mesmas entradas gera resultados parecidos, não garantidamente idênticos. |
Preços
Cobrado por segundo da duração solicitada; o preço por segundo depende da resolução, enquanto som e proporção não o alteram. Requisições com falha não são cobradas.
| Especificação | Preço |
|---|---|
| $0.024 / segundo |
| $0.048 / segundo |
| $0.072 / segundo |
Casos de uso
Um retrato que fala com a sua gravação
Uma foto de rosto mais um arquivo de fala: a boca acompanha o seu áudio e o rosto fica próximo da foto.
Um personagem que diz uma frase
Uma imagem de quadro inicial e uma frase curta entre aspas, para ver como o personagem aparece e soa antes de se comprometer com mais.
Clipes verticais a partir de uma foto
Escolha 9:16 para feeds e stories. Todas as nossas execuções deste endpoint usaram 16:9, então confira um primeiro clipe.
Guia de prompt e dicas práticas
Descreva o momento seguinte
Escreva o que a pessoa faz depois que a foto foi tirada: ela se vira para a câmera, ajeita o cabelo, fala. Na nossa execução, as três coisas aconteceram.
Com o seu próprio áudio, deixe as palavras de fora
A voz vem de audio_url, então o prompt pode definir o clima, o movimento e a luz, por exemplo he speaks low and teasing, a slow half smile and a raised eyebrow, warm amber light.
Faça a gravação combinar com o clipe
Nossa execução usou uma gravação de 5 segundos para um clipe de 5 segundos. Não testamos uma gravação mais curta ou mais longa que duration_seconds, então corte o seu áudio na duração que você definiu.
Sem áudio, coloque a fala entre aspas
Coloque o que a pessoa diz entre aspas e o modelo a fala. Testamos inglês.
Escolhendo entre modelos
Se você já tem a gravação de voz e um retrato e quer um clipe mais longo, de até 300 segundos, guiado por esse áudio, use o OmniHuman 2.0; o Kling Avatar 2.0 é a mesma ideia. Escolha o daVinci-MagiHuman quando quiser que o modelo fale uma frase que você escreve, ou quando precisar de um clipe em 9:16.
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": "sand-ai/davinci-magihuman/image-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"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.




