Kling AI · time freeze · audio nativo

El pollo salió vivo del horno y el tiempo se congeló

Un corto de ~38 segundos hecho solo con la suscripción Kling AI vía el CLI oficial: tu rostro real en el primer cuadro, 4 clips encadenados, el efecto de congelamiento y el montaje con sonido.

Banner Congelou: hombre asustado y pollo asado congelado en el aire
El resultado

Mira (con sonido)

Pollo en el horno → café → abre el horno → el pollo sale vivo → todo se congela y la cámara pasea por la escena → el tiempo vuelve y llega el desastre.

Versión 1 · la original

Versión 2 · congelamiento total + paradas

La gallina sale en el instante en que se abre la puerta. En el congelamiento todo se detiene, tú también, y solo la cámara se mueve. Cuando el tiempo vuelve, el movimiento avanza un poquito y se traba, avanza y se traba de nuevo — 4 paradas, cada una más corta, con el sonido cortándose en cada trabada — y recién entonces sigue a la velocidad natural. Sin cámara lenta: son cuadros reales sostenidos en ffmpeg (montar_paradas.sh).

Versión 3 · el gato en el microondas (4K)

Tienes el plato en la mano y abres el microondas para meter la comida, y sale un gato vivo y asustado. Del susto, el plato se te escapa. Dos momentos congelados, en 4K y sin desenfoque: el gato en el aire con la comida volando, y el plato haciéndose añicos en el piso con trozos y arroz suspendidos. Después tiras toda la cocina. Cada congelamiento es una foto 4K nítida (nitido.sh) con el movimiento de cámara hecho en ffmpeg (freeze.sh), así nada en ella se mueve ni se desenfoca. Prompts k4, N1, N3, F2, N5.

Qué es

Un pipeline corto y repetible de video con IA

No es una app, es una receta probada: 3 scripts de shell + prompts en texto. Cada pieza se puede cambiar para contar otra historia.

🙂 Tú eres el protagonista

El primer cuadro se genera a partir de una foto real de tu rostro (Nano Banana Pro, dentro de la propia Kling). El resto de la película hereda ese rostro.

🔗 Continuidad por encadenamiento

Cada clip empieza en el último cuadro del anterior. Mismo personaje, misma cocina, misma luz, sin "saltos" entre escenas.

🔊 Sonido incluido

Kling 3.0 con enable_audio: puertas, pasos, café, el cacareo y el silencio del congelamiento salen junto con la imagen. El ffmpeg solo une y normaliza.

Cómo funciona

Keyframe → clips encadenados → montaje

Todo con tu cuenta Kling AI (CLI kling). Nada de Magnific, RunComfy u otro revendedor: es tu suscripción, tus créditos.

📸 foto del rostro→ 🖼️ keyframe k1→ 🎬 clip A→ último cuadro→ 🎬 clip B→ 🎬 clip C (freeze)→ 🎬 clip D→ ✂️ ffmpeg→ 🎞️ final.mp4
ClipQué pasaDuraciónCréditos Kling
k1Still: tú colocando el pollo en el hornoimagen 2k20
AEmpuja la bandeja, cierra el horno, gira la perilla5s60
BSirve el café, toma un sorbo, vuelve y toca la puerta8s96
CPollo vivo salta, el tiempo se congela, la cámara orbita, el tiempo vuelve15s180
DEl desastre a velocidad normal: harina, ollas, resbalón, fuga por la ventana10s120

Medido en la cuenta (plan Pro): Kling 3.0 a 1080p con audio sale por 12 créditos/segundo. La película completa costó cerca de 476 créditos.

Prerrequisitos

Qué necesita estar en la máquina

Tres cosas: el CLI oficial de Kling con sesión iniciada en tu cuenta, ffmpeg y Python 3.

Kling CLI

CLI oficial, cliente del MCP de Kling. Inicio de sesión vía navegador (OAuth).

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

ffmpeg / ffprobe

Para extraer el último cuadro, generar contact sheets y montar el video final.

sudo apt install ffmpeg

Python 3 + curl

Usados por los scripts para leer el JSON de Kling y descargar los archivos.

python3 --version
curl --version
Guía de uso · paso a paso

Cómo se hizo este video (y cómo lo rehaces)

Los comandos de abajo son exactamente los que generaron el video. Ejecútalos dentro de la carpeta del repo.

1

Revisa cuenta y modelos

El who_am_i lista los modelos y parámetros que tu suscripción habilita. Presta atención a los valores por defecto: Kling 3.0 viene con 4k, audio apagado y multi-shot activado, y los scripts sobrescriben los tres.

kling who_am_i -q > who_am_i.json
kling account
2

Keyframe inicial con tu rostro

Una foto tuya + el prompt de la escena. Sale un still 2k 16:9 que se convierte en el primer cuadro de la película.

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

Genera los clips en cadena

Cada clip.sh genera el clip, lo descarga, mide el audio, hace un contact sheet y guarda el último cuadro, que es el inicio del siguiente.

./clip.sh A keyframes/k1.png      5    # pollo en el horno
./clip.sh B keyframes/A_last.png  8    # café y vuelta al horno
./clip.sh C keyframes/B_last.png  15   # pollo vivo + TIME FREEZE
./clip.sh D keyframes/C_last.png  10   # el desastre
4

Mira cada clip antes de seguir

Abre clips/X_sheet.png (8 cuadros a lo largo del clip). Si algo salió mal, rehaz solo ese clip: los siguientes parten de su último cuadro.

xdg-open clips/C_sheet.png
5

Monta la película

Estandariza en 1920×1080/24fps, corta el cuadro repetido de cada empalme, une con el audio nativo y normaliza en -14 LUFS.

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

Los prompts usados

Están en prompts/. El del congelamiento (C) fue adaptado de la plantilla freeze_effect_template_en.md, que es un esqueleto de escena, congelamiento, cámara congelada, reanudación y continuidad.

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 · el congelamiento (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.

🧊 La regla de oro del freeze

Todo objeto suspendido necesita una causa. El romero vuela porque el pollo saltó de la bandeja; el café vuela porque la taza se volcó del susto.

🎥 La cámara se mueve, el mundo no

Pide "nothing moves except the camera" y describe el recorrido de la cámara entre los objetos suspendidos.

🔇 El sonido también se congela

Describe el audio del freeze ("total silence with a low ringing tone"). El audio nativo acompaña el cambio.

Ejemplos

Los cuatro clips, cuadro a cuadro

Contact sheets reales generados por fetch.sh.

Clip A: el pollo entra al horno
A · el pollo entra al horno y enciendes la perilla
Clip B: café y vuelta al horno
B · café, sorbo, y la mano en la puerta del horno
Clip C: pollo vivo congelado en el aire
C · el pollo salta vivo y el tiempo se congela
Clip D: el desastre en la cocina
D · el tiempo vuelve y llega el desastre
Repítelo con otro tema

Cambia la historia, mantén la receta

El pipeline no sabe nada de pollos. Para hacer otro video, reescribes los prompts y ejecutas los mismos tres scripts.

1

Escribe la historia en 3 a 5 golpes con causa y efecto

Presentación → preparación → lo imposible (freeze) → consecuencia. Cada golpe se convierte en un clip de 5 a 15s. Ejemplo: "lavo el auto → voy a buscar la manguera → el auto se va solo → se congela en el aire sobre el charco → aterriza y me salpica de barro".

2

Crea una carpeta nueva y copia los 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

Escribe los prompts

prompts/k1.txt es el primer cuadro, y A.txt, B.txt… son los clips. En el clip del congelamiento, copia el esqueleto de freeze_effect_template_en.md y cambia solo el contenido. Pon siempre una línea Sound: al final.

4

Ejecuta la cadena y monta

./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

Pidiéndoselo a Claude Code

Se puede pedir en lenguaje natural. Di "usa mi suscripción klingai" para que use el CLI kling, y pasa la historia y el archivo de plantilla del freeze.

# ejemplo de solicitud
"usa el klingai directo y crea esta historia: ... congelo como este prompt
 ~/projetos/congelou/prompts/freeze_effect_template_en.md; júntalo con sonido"
Lecciones

Lo que aprendimos haciéndolo

Detalles que ahorran créditos la próxima vez.

Defaults
Sobrescribe resolución, audio y multi-shotKling 3.0 viene con 4k (más caro), audio apagado y multi-shot activado (corta la escena). Para el freeze usa 1080p, enable_audio true y prefer_multi_shots false.
15s
15 segundos en plano único funcionaEl clip C corrió 15s sin multi-shot y sostuvo el congelamiento con la cámara orbitando.
URLs
Descarga de inmediatoLas URLs de resultado de Kling expiran en 24h. El fetch.sh descarga en cuanto el clip termina.
Portada
Usa un cuadro realLa mejor portada es un cuadro del propio freeze. Un generador de imágenes genérico tiende a ser demasiado literal.