Kuaishou
Kling 4.0
kling-4.0/image-to-video
Modelo de geração de vídeo do Kuaishou, capaz de gerar um vídeo de 30 segundos com áudio estéreo em uma única execução, com suporte a múltiplos quadros-chave e controle de primeiro e último quadro, ideal para curtas de marketing e pré-visualização de storyboards
Experimentar kling-4.0/image-to-video
Entrada
Saída
Preços
kling-4.0/image-to-video per second
| Especificações | Preço unitário |
|---|---|
| 1080P | $0.330 |
Visão geral do posicionamento
A linha de imagem para vídeo do Kling 4.0 é destinada a desenvolvedores que precisam gerar vídeos contínuos a partir de uma única imagem de primeiro quadro. Basta inserir uma imagem jpeg ou png e fornecer uma descrição de movimento, câmera e emoção para obter clipes de 3 a 30 segundos, com suporte às resoluções 720p e 1080p e às proporções 16:9, 9:16, 1:1 e 21:9, com cobrança por segundo de saída. É adequada para storyboards publicitários, vídeos curtos para redes sociais e pré-visualização narrativa, ou seja, fluxos criativos que exigem começar por uma imagem fixa e controlar a direção da câmera.
Destaques principais
- Ponto de partida fixado por um único primeiro quadro — use uma imagem como ponto de início da tomada e, com o prompt, controle o movimento e a direção da câmera, reduzindo a deriva visual causada pela geração apenas por texto.
- Duração e proporção ajustáveis conforme a cena — a duração cobre de 3 a 30 segundos e a proporção pode ser horizontal, vertical, quadrada ou widescreen; quando não especificada, segue a proporção da imagem de origem.
- Resolução dividida entre rascunho e versão final — 720p para testes rápidos e 1080p para saída de nível de entrega; esta última tem tempo de renderização visivelmente maior, podendo ser alternada conforme a etapa.
Descrição das capacidades
Geração de vídeo a partir do primeiro quadro: basta fornecer uma imagem e um prompt para gerar um vídeo; o prompt descreve movimento, câmera e atmosfera, e o modelo continua a tomada usando o primeiro quadro como referência visual.
Controle de duração de 3 a 30 segundos: o comprimento do clipe pode ser especificado pelo parâmetro de duração; clipes curtos servem para validação rápida e clipes longos reduzem o trabalho de gerar várias vezes e depois concatenar, com cobrança calculada pelos segundos de saída.
Resolução e proporção opcionais: oferece as saídas 720p e 1080p; as proporções disponíveis são 16:9, 9:16, 1:1 e 21:9; quando não preenchida, mantém a proporção da imagem de origem, facilitando a adaptação a diferentes posicionamentos de exibição de uma só vez.
Prompt com indicação sonora: o campo de prompt pode descrever simultaneamente o som desejado, expressando o movimento visual e a direção sonora na mesma chamada.
Cenários de aplicação
- Storyboard publicitário: prolongar a tomada a partir de uma imagem fixa do produto — insira a imagem do produto e a descrição do movimento de câmera para produzir clipes dinâmicos de alguns segundos a dezenas de segundos, usados em materiais de anúncio ou pré-visualização de storyboard.
- Vídeos curtos para redes sociais: transformar imagem vertical em movimento — use a proporção 9:16 para gerar um clipe de vídeo curto a partir de uma única composição, diretamente para publicação em formato vertical.
- Pré-visualização narrativa: avançar a história a partir de imagens-chave — gere trechos usando o primeiro quadro da cena com descrição de movimento e emoção, para validar a baixo custo o ritmo das tomadas e a continuidade narrativa.
- Tomadas atmosféricas em widescreen — use a proporção 21:9 para gerar, a partir de uma imagem estática, um plano longo que crie atmosfera, para abertura, transição ou imagem de fundo.
Limitações e recomendações de escolha
Suporta apenas a entrada de uma única imagem de primeiro quadro, não oferecendo múltiplos materiais de referência, sequência de quadros-chave nem controle de primeiro e último quadro; o limite de duração por vez é de 30 segundos e a resolução está limitada a 720p e 1080p. A renderização em 1080p leva visivelmente mais tempo; antes da entrega final, recomenda-se validar a tomada e a direção do movimento primeiro em 720p. Quando for necessário gerar vídeo a partir de texto do zero, deve-se escolher a linha de texto para vídeo da mesma série; para narrativas longas que exigem encadeamento preciso de várias tomadas, é preciso gerar em segmentos e depois editar e combinar.
Perguntas frequentes
Ver todas as perguntas →-
Quais são os requisitos para a imagem do primeiro frame?
Uma URL de imagem jpeg ou png acessível publicamente, colocada no array image_urls, enviando apenas uma imagem por vez. A imagem será usada como o quadro inicial do clipe.
-
O que acontece se eu não escolher a proporção da imagem?
Quando aspect_ratio não é passado, a saída acompanha automaticamente a proporção do primeiro frame, e imagens verticais não são forçadas a serem cortadas para o formato horizontal. Só é necessário definir explicitamente quando você quiser substituir a proporção da imagem original.
-
O Prompt é obrigatório?
Sim. A imagem do primeiro frame é responsável pela composição e pelo sujeito, e o Prompt descreve a ação, o enquadramento e o som; ambos são necessários. Costuma funcionar melhor escrever o texto mais curto.
-
Como é cobrado o vídeo gerado a partir de imagem?
A cobrança é feita da mesma forma que o vídeo gerado a partir de texto, por segundos de saída; os níveis 720p e 1080p têm preços diferentes, sem valor mínimo.
Criar uma tarefa de geração
https://api.hiapi.ai/v1/tasks Cabeçalhos
AuthorizationstringObrigatórioChave de API da conta. Obrigatória em toda requisição. Exemplo: Bearer YOUR_HIAPI_API_KEY. Obter chave de API
Content-TypestringOpcionalO corpo da requisição é sempre interpretado como JSON; se enviado, apenas application/json (charset opcional) é aceito — qualquer outro valor retorna 415. Exemplo: application/json.
Idempotency-KeystringOpcionalChave de idempotência, até 255 bytes. Retries com a mesma chave da mesma conta criam a tarefa apenas uma vez; replays retornam o taskId original.
Em timeouts de rede ou retries automáticos do cliente, a mesma chave cria a tarefa apenas uma vez, sem cobrança duplicada (escopo = a conta da chave de API). Use um identificador de negócio exclusivo (ex.: "order-42"); replays retornam o taskId original e as chaves expiram 24 h após a primeira requisição. A matriz completa de cenários está na introdução da API assíncrona unificada.
Corpo
modelstringObrigatórioValor fixo atual: kling-4.0/image-to-video
routestringOpcionalValor fixo atual: default
inputobjectObrigatório
Objeto de parâmetros de negócio para kling-4.0/image-to-video e a rota default — veja a tabela de parâmetros abaixo.
promptstringObrigatóriominLength 1maxLength 2500Direction for motion, camera and mood. Required: describe what should move and how, and put the sound you want here too.
durationintegerOpcionalPadrão: 5min 3max 30Clip length in seconds (3-30). Billed per second.
image_urlsarrayObrigatóriominItems 1maxItems 1Image the shot starts from. jpeg or png.
Array [ string ]
resolutionstringOpcionalPadrão: "720p"Output resolution. 1080p takes noticeably longer to render than 720p.
720p1080paspect_ratiostringOpcionalFrame shape of the output. Leave empty to follow the source image.
16:99:161:121:9callbackobjectOpcional
Configuração de notificação de estado terminal. Se omitida, sem callback: consulte a tarefa por conta própria.
Informe callback.url na criação e o HiAPI fará POST no seu serviço no estado terminal, sem polling. O corpo do callback replica a estrutura do detalhe da tarefa; assinatura, retries e idempotência estão descritos na introdução da API assíncrona unificada.
urlstringObrigatórioObrigatória se callback estiver presente. No estado terminal é enviado um POST para esta URL; deve ser uma URL http(s) válida.
whenstringOpcionalPadrão: "final"Atualmente só há suporte a final — notifica tanto em success quanto em fail.
finalstoragestringOpcionalPadrão: "temp"Nível de armazenamento de artefatos: temp (padrão, ~7 dias) ou persistent (longo prazo, cobrado por tamanho). Saldo insuficiente ou limite excedido ⇒ rebaixamento silencioso para temp; o nível efetivo aparece na resposta de detalhes.
temppersistentExemplos de requisição
# Envia uma tarefa assíncrona; retorna um taskId imediatamente (sem esperar a geração)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-4.0/image-to-video",
"input": {
"prompt": "…",
"duration": 5,
"image_urls": "…",
"resolution": "720p"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "kling-4.0/image-to-video",
input: {
"prompt": "…",
"duration": 5,
"image_urls": "…",
"resolution": "720p"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "kling-4.0/image-to-video",
"input": {
"prompt": "…",
"duration": 5,
"image_urls": "…",
"resolution": "720p"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obter detalhes da tarefa
https://api.hiapi.ai/v1/tasks/:id Campos da resposta
taskIdstringObrigatórioID da tarefa, sempre com prefixo tk-hiapi-.
modelstringObrigatórioNome completo resolvido do modelo. Tarefas enviadas com o parâmetro route retornam base@route (ex.: gpt-image-2/text-to-image@ext); caso contrário, igual ao nome enviado.
routestringOpcionalPresente apenas se o parâmetro route explícito foi usado; ecoa o valor enviado.
statusstringObrigatórioEstado da tarefa.
queued Na fila, ainda não iniciada.
handling Em processamento.
archiving Processamento concluído, preparando artefatos.
success Terminal: concluído, artefatos disponíveis (retorna output).
fail Terminal: falha (retorna error).
Após o envio, acompanhe status: success e fail são terminais, os demais não. Faça polling a cada 1–3 s até o estado terminal. Em caso de sucesso, baixe os artefatos em output[].url e transfira antes de expireAt; para retenção longa, use storage: "persistent" na criação.
creatednumberObrigatórioMomento de criação da tarefa (segundos Unix).
completednumberObrigatórioSegundos Unix do estado terminal; 0 enquanto não terminal.
outputarrayOpcional
Presente apenas com status == success. Lista de artefatos — sempre um array; uma tarefa pode retornar vários types ao mesmo tempo (ex.: video + first_frame).
Array [ object ]
Itens do array
urlstringObrigatórioURL do artefato, baixável diretamente.
typestringObrigatórioValores possíveis no momento: video, image, audio, first_frame, last_frame, thumbnail; poderão ser ampliados.
expireAtnumberObrigatórioSegundos Unix de disponibilidade do artefato; baixe ou transfira antes da expiração.
errorobjectOpcional
Presente apenas com status == fail.
codestringObrigatórioCódigo de erro de negócio.
messagestringObrigatórioDescrição do erro.
Exemplos de resposta
Sucesso
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} Em processamento (não final)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Falhou
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Artigos
Ver todos os artigos →-
Tutorial
Como chamar hailuo-2.3-fast/image-to-video pela API HiAPI: curl e Python na prática
A primeira requisição executável do nível rápido e econômico de geração de vídeo a partir de imagem — do ID do modelo ao download do MP4
-
Tutorial
Como chamar hailuo-2.3/text-to-video pela API HiAPI: curl, Python e exemplos de requisição executáveis
-
Tutorial
Como usar kling-4.0/text-to-video através da API HiAPI: curl, Python e um exemplo de requisição executável
Guia prático para desenvolvedores: prompts cinematográficos, áudio sincronizado, polling assíncrono e download da saída
-
Tutorial
Tutorial de kandinsky-6.0-pro/image-to-video na HiAPI: curl + Python
Faça uma requisição de imagem para vídeo funcional na HiAPI: do upload do primeiro quadro ao polling assíncrono e ao download final
-
Tutorial
Como chamar kling-4.0/image-to-video na HiAPI: curl, Python e polling
-
Tutorial
Usar Kandinsky 6.0 Pro text-to-video na HiAPI: tutorial de curl e Python
Demonstração prática com foco na requisição: montar a chamada de prompt para clipe de vídeo, enviar a requisição, consultar o status de conclusão e baixar o resultado
Modelos relacionados
Ver todos os modelos →Mesmo tipo
-
Vidu Q4 Preview Vidu $0.051 /segundo -
MiniMax H3 MiniMax $0.072 /segundo -
Gemini Omni Google -- -
Grok Imagine 1.5 xAI $0.011 /segundo -
Gemini Omni 1.1 Flash Google $0.450 /vídeo -
FLUX 3 Video Black Forest Labs $0.090 /segundo -
Wan 3.0 Video Alibaba $0.040 /segundo -
HappyHorse 1.0 Alibaba $0.168 /segundo -
Wan 2.6 Flash Alibaba $0.043 /segundo -
Hailuo 2.3 MiniMax $0.270 /vídeo -
FLUX 3 Max Black Forest Labs $0.061 /segundo -
Kling 3.0 Kuaishou $0.100 /segundo