Pipeline de videos con Remotion
Metraje real + tipografía dibujada con código = videos con marca, sin errores tipográficos y ediciones repetibles.
Pipeline
- Inventario de clips brutos:
scripts/inventory.sh <raw-dir> > index.tsv(id, ruta, duración, resolución). - Proxies:
scripts/make-proxies.sh index.tsv proxy/crea copias H.264 de 1080 de ancho, 30 fps, intra-cuadro-ish (-g 15) sin audio. Edita y renderiza contra los proxies; los originales 4K/HEVC hacen que Remotion busque lentamente y pueden bloquear Chrome. - Elige momentos mirando, no adivinando:
scripts/contact-sheet.sh proxy/v01.mp4 sheets/v01.jpgimprime un fotograma por segundo en una cuadrícula. Abre la hoja y anota los segundos de inicio por corte. - Compón en
template/(cópialo):Footage(clip recortado y ampliado),Scrim(degradado para texto legible),Line(texto animado). Una composición por salida (p. ej.Main30 s,Teaser9 s,Spot16x920 s). - Renderiza:
npx remotion render <CompositionId> out/<nombre>.mp4. La configuración ya establece H.264, CRF 17, yuv420p. - Verifica: extrae 3 fotogramas (
ffmpeg -ss 5 -i out.mp4 -frames:v 1 still.png) y obsérvalos; comprueba la duración y que la política de audio (silencio o música) sea la que el cliente espera.
Trampas (cada una cuesta tiempo real)
- Establece
lang="tr"(o el idioma correcto) en la raíz; de lo contrario, CSStext-transform: uppercaseconvierte laiturca enI(MAKINASI, TEKLIF). Prefiere escribir la caja final en la cadena. ffmpegdentro de bucleswhile readse traga stdin: siempre pasa-nostdin.- zsh divide de forma distinta a bash:
set -- $py$2:sse rompen. Escribe los scripts con#!/usr/bin/env bash. - Muchas compilaciones de ffmpeg no tienen
drawtext. Dibuja el texto en Remotion, nunca en ffmpeg. - Los renderizadores basados en HTML (p. ej. Hyperframes) pueden dejar capas de superposición «oscuras» visibles entre escenas; además, desvanece las escenas con una animación de opacidad explícita. Ejecuta esos renders en primer plano (las ejecuciones en segundo plano
nohupse cancelan) y convierte la salida HEVC conffmpeg -i in.mp4 -c:v libx264 -crf 18 -pix_fmt yuv420p out.mp4. - Rotación de metraje de teléfono: comprueba las etiquetas de rotación con
ffprobe; los clips verticales en una composición horizontal necesitanobjectFit: covermás un recorte explícito. - Solo afirma lo que muestra el metraje. No inventes especificaciones, capacidades ni precios en el texto en pantalla.
- Mantén los archivos del cliente fuera del repositorio que publiques; el metraje y los logotipos pertenecen al cliente.
Consulta references/checklist.md para la lista de verificación de entrega.