Kling AI · time freeze · áudio nativo

O frango saiu vivo do forno e o tempo congelou

Um curta de ~38 segundos feito só com a assinatura Kling AI pelo CLI oficial: seu rosto real no primeiro quadro, 4 clipes encadeados, o efeito de congelamento e a montagem com som.

Banner Congelou: homem assustado e frango assado congelado no ar
O resultado

Assista (com som)

Frango no forno → café → abre o forno → o frango sai vivo → tudo congela e a câmera passeia pela cena → o tempo volta e vem o estrago.

Versão 1 · o original

Versão 2 · freeze total + paradas

A galinha sai no instante em que a porta abre. No congelamento tudo para, inclusive você, e só a câmera se move. Quando o tempo volta, o movimento anda um pedacinho e trava, anda e trava de novo — 4 paradas, cada uma mais curta, com o som sumindo em cada trava — e só então segue na velocidade natural. Sem câmera lenta: são quadros reais segurados no ffmpeg (montar_paradas.sh).

Versão 3 · o gato no microondas (4K)

Você está com o prato na mão e abre o microondas pra colocar a comida, e sai um gato vivo e assustado. No susto, o prato escapa. Dois momentos congelados, em 4K e sem borrão: o gato no ar com a comida voando, e o prato estilhaçando no chão com cacos e arroz suspensos. Depois você derruba a cozinha inteira. Cada congelamento é uma foto 4K nítida (nitido.sh) com o movimento de câmera no ffmpeg (freeze.sh), porque nada nela se mexe nem borra. Prompts k4, N1, N3, F2, N5.

O que é

Um pipeline curto e repetível de vídeo com IA

Não é um app, e sim uma receita testada: 3 scripts shell + prompts em texto. Cada peça pode ser trocada pra contar outra história.

🙂 Você é o protagonista

O primeiro quadro é gerado a partir de uma foto real do seu rosto (Nano Banana Pro, dentro da própria Kling). O resto do filme herda esse rosto.

🔗 Continuidade por encadeamento

Cada clipe começa no último quadro do anterior. Mesmo personagem, mesma cozinha, mesma luz, sem “pular” entre as cenas.

🔊 Som incluído

Kling 3.0 com enable_audio: portas, passos, café, cacarejo e o silêncio do congelamento saem junto com a imagem. O ffmpeg só junta e normaliza.

Como funciona

Keyframe → clipes encadeados → montagem

Tudo pela sua conta Kling AI (CLI kling). Nada de Magnific, RunComfy ou outro revendedor: é a sua assinatura, os seus créditos.

📸 foto do rosto→ 🖼️ keyframe k1→ 🎬 clipe A→ último quadro→ 🎬 clipe B→ 🎬 clipe C (freeze)→ 🎬 clipe D→ ✂️ ffmpeg→ 🎞️ final.mp4
ClipeO que aconteceDuraçãoCréditos Kling
k1Still: você colocando o frango no fornoimagem 2k20
AEmpurra a assadeira, fecha o forno, gira o botão5s60
BPassa o café, toma um gole, volta e pega na porta8s96
CFrango vivo salta, tempo congela, câmera orbita, tempo volta15s180
DO estrago em tempo normal: farinha, panelas, escorregão, fuga pela janela10s120

Medido na conta (plano Pro): Kling 3.0 a 1080p com áudio sai por 12 créditos/segundo. O filme todo custou cerca de 476 créditos.

Pré-requisitos

O que precisa estar na máquina

Três coisas: o CLI oficial da Kling logado na sua conta, ffmpeg e Python 3.

Kling CLI

CLI oficial, cliente do MCP da Kling. Login via navegador (OAuth).

npm i -g @klingai/cli-global
kling login
kling account   # plano + créditos

ffmpeg / ffprobe

Pra extrair o último quadro, gerar contact sheets e montar o vídeo final.

sudo apt install ffmpeg

Python 3 + curl

Usados pelos scripts pra ler o JSON da Kling e baixar os arquivos.

python3 --version
curl --version
Guia de uso · passo a passo

Como este vídeo foi feito (e como você refaz)

Os comandos abaixo são exatamente os que geraram o vídeo. Rode dentro da pasta do repo.

1

Confira conta e modelos

O who_am_i lista os modelos e parâmetros que a sua assinatura libera. Atenção aos defaults: o Kling 3.0 vem com 4k, áudio desligado e multi-shot ligado, e os scripts sobrescrevem os três.

kling who_am_i -q > who_am_i.json
kling account
2

Keyframe inicial com o seu rosto

Uma foto sua + o prompt da cena. Sai um still 2k 16:9 que vira o primeiro quadro do filme.

./keyframe.sh ref/nei.jpg prompts/k1.txt   # → keyframes/k1.png
3

Gere os clipes em cadeia

Cada clip.sh gera o clipe, baixa, mede o áudio, faz um contact sheet e salva o último quadro, que é o início do próximo.

./clip.sh A keyframes/k1.png      5    # frango no forno
./clip.sh B keyframes/A_last.png  8    # café e volta ao forno
./clip.sh C keyframes/B_last.png  15   # frango vivo + TIME FREEZE
./clip.sh D keyframes/C_last.png  10   # o estrago
4

Olhe cada clipe antes de seguir

Abra clips/X_sheet.png (8 quadros ao longo do clipe). Se algo quebrou, refaça só aquele clipe: os seguintes partem do último quadro dele.

xdg-open clips/C_sheet.png
5

Monte o filme

Padroniza em 1920×1080/24fps, corta o quadro repetido de cada emenda, junta com o áudio nativo e normaliza em -14 LUFS.

./montar.sh A B C D   # → congelou_final.mp4
Prompts

Os prompts usados

Ficam em prompts/. O do congelamento (C) foi adaptado do template freeze_effect_template_en.md, que é um esqueleto de cena, congelamento, câmera congelada, retomada e continuidade.

k1 · keyframe (image_to_image, gemini-3-pro-image)
Photorealistic cinematic film still, 35mm, natural warm daylight. The man from image 1 (same face, bald head with short white hair on the sides, white stubble beard, black rectangular glasses, plain dark green t-shirt) stands in a cozy rustic home kitchen with exposed brick walls and dark wooden ceiling beams. He is bending slightly and sliding a metal roasting pan with a whole raw seasoned chicken (pale skin, herbs, garlic, lemon halves) into an open built-in stainless steel oven at waist height. [...]
C · o congelamento (15s)
ACTION: The man pulls the oven door open, holding his white coffee mug in his other hand. Hot steam pours out. Suddenly the whole plucked, half-roasted golden chicken jumps up ALIVE from the roasting pan and leaps out of the oven straight toward his face [...] droplets of hot grease, sprigs of rosemary, a lemon slice and a garlic clove fly out of the pan. [...]

TIME FREEZE: At the peak of the chicken's leap, time stops completely. The chicken hangs motionless in mid-air [...] Nothing moves except the camera.

FROZEN CAMERA: The camera slowly glides around the frozen scene [...]

RESUME: Time resumes instantly at normal speed with no effect. The chicken crashes onto the kitchen counter [...]

Sound: [...] during the freeze total silence with only a low high-pitched ringing tone [...]

Prompts completos: github.com/inematds/congelou/prompts.

🧊 A regra de ouro do freeze

Todo objeto suspenso precisa de uma causa. O alecrim voa porque o frango pulou da assadeira; o café voa porque a caneca virou no susto.

🎥 A câmera se move, o mundo não

Peça “nothing moves except the camera” e descreva o caminho da câmera entre os objetos suspensos.

🔇 O som também congela

Descreva o áudio do freeze (“total silence with a low ringing tone”). O áudio nativo acompanha a mudança.

Exemplos

Os quatro clipes, quadro a quadro

Contact sheets reais gerados pelo fetch.sh.

Clipe A: frango entra no forno
A · o frango entra no forno e você liga o botão
Clipe B: café e volta ao forno
B · café, gole, e a mão na porta do forno
Clipe C: frango vivo congelado no ar
C · o frango salta vivo e o tempo congela
Clipe D: o estrago na cozinha
D · o tempo volta e vem o estrago
Repita com outro assunto

Troque a história, mantenha a receita

O pipeline não sabe nada de frango. Pra fazer outro vídeo, você reescreve os prompts e roda os mesmos três scripts.

1

Escreva a história em 3 a 5 batidas com causa e efeito

Apresentação → preparação → o impossível (freeze) → consequência. Cada batida vira um clipe de 5 a 15s. Exemplo: “lavo o carro → vou buscar a mangueira → o carro sai andando sozinho → congela no ar sobre a poça → pousa e espirra lama em mim”.

2

Crie uma pasta nova e copie os scripts

mkdir ~/projetos/meu-freeze && cd ~/projetos/meu-freeze
cp ~/projetos/congelou/{keyframe,clip,fetch,montar}.sh .
mkdir prompts ref && cp minha-foto.jpg ref/
3

Escreva os prompts

prompts/k1.txt é o primeiro quadro, e A.txt, B.txt… são os clipes. No clipe do congelamento, copie o esqueleto do freeze_effect_template_en.md e troque só o conteúdo. Coloque sempre uma linha Sound: no fim.

4

Rode a cadeia e monte

./keyframe.sh ref/minha-foto.jpg prompts/k1.txt
./clip.sh A keyframes/k1.png 5
./clip.sh B keyframes/A_last.png 8
./clip.sh C keyframes/B_last.png 15
OUT=meu_filme.mp4 ./montar.sh A B C
5

Pedindo ao Claude Code

Dá pra pedir em linguagem natural. Diga “use a minha assinatura klingai”, pra ele usar o CLI kling, e passe a história e o arquivo de template do freeze.

# exemplo de pedido
"use o klingai direto e crie esta história: ... congelo como este prompt
 ~/projetos/congelou/prompts/freeze_effect_template_en.md; junte com som"
Lições

O que aprendemos fazendo

Detalhes que economizam créditos na próxima vez.

Defaults
Sobrescreva resolução, áudio e multi-shotO Kling 3.0 vem com 4k (mais caro), áudio desligado e multi-shot ligado (corta a cena). Pra freeze use 1080p, enable_audio true e prefer_multi_shots false.
15s
15 segundos em plano único funcionaO clipe C rodou 15s sem multi-shot e segurou o congelamento com a câmera orbitando.
URLs
Baixe na horaAs URLs de resultado da Kling expiram em 24h. O fetch.sh baixa assim que o clipe termina.
Capa
Use um quadro realA melhor capa é um quadro do próprio freeze. Gerador de imagem genérico tende a ficar literal demais.