Communitygithub.com

Premium Video Skill — v3.3 (Anchor Grid + Sound)

Una habilidad de orquestación para agentes senior que convierte un guion de voz en un video corto premium de HyperFrames con cuadrícula de anclaje, tipografía cinética y sistema de sonido completo.

¿Qué es Premium Video Skill — v3.3 (Anchor Grid + Sound)?

Esta habilidad, diseñada para agentes de IA senior, transforma un guion de voz en un video corto premium utilizando el framework HyperFrames. Su principal ventaja es la automatización completa del pipeline de producción: desde la generación de escenas y la validación de diseño (contraste, tipo, zonas seguras) hasta la síntesis de efectos de sonido y la mezcla de audio maestra. Soporta el uso de HyperFrames CLI y requiere Python 3, Node.js ≥ 22 y FFmpeg. El skill garantiza una cuadrícula de anclaje invariante en la parte inferior de cada escena, un ciclo de seis colores de fondo para evitar repeticiones, y un sistema de sonido que sintetiza 14 efectos desde cero, generando un master de audio con loudness corregido a -14 LUFS y pico verdadero ≤ -1 dBTP. Además, reconoce palabras clave técnicas (tor, vpn, blockchain, etc.) para insertar automáticamente diagramas SVG animados, tarjetas de evidencia con efecto glassmorphism y transiciones con motion blur, todo validado por un gate de diseño que asegura cumplimiento de contraste WCAG ≥ 4.5:1.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/uttamongithb1/video-skill/tree/HEAD

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace Premium Video Skill — v3.3 (Anchor Grid + Sound)?

==================================================

Una habilidad de orquestación para agentes senior que convierte un guion de voz en un video corto premium de HyperFrames con:

  • Cuadrícula de anclaje (kicker → hero → body → chip → presentador, fijada en la parte inferior)
  • Tipografía cinética (animación escalonada palabra por palabra)
  • Animaciones SVG (diagramas técnicos con elementos en movimiento)
  • Tarjetas de evidencia con efecto glassmorphism + tercios inferiores + pantallas finales
  • Transiciones con motion blur
  • Sistema de sonido completo (síntesis de SFX, hoja de señales, mezcla de audio)
  • Validación de contrato de diseño (gate prepare.py)
  • Pipeline reproducible (scenes.sh → prepare.py → build_index.py)

Pipeline (el orden no es negociable)

guion de voz
    │
    ▼
generate.py  →  new_scene.py  →  prepare.py  →  build_index.py
  (analizar)     (archivos de escena) (validar)     (HTML raíz + transiciones)
    │                                         │
    ▼                                         ▼
npx hyperframes lint  →  npx hyperframes render
  (gate 0 errores)       (salida MP4)
    │
    ▼
python3 scripts/gen_sfx.py       # sintetizar SFX (una vez)
python3 scripts/mix_audio.py     # VO + señales + base → master.wav
ffmpeg mux → final.mp4

Paso a paso

# 1. Generar composiciones de escena + HTML raíz desde el guion de voz
python3 generate.py --script my_script.txt --topic Tor --output index.html

# 2. Gate de validación (contraste, tipo, zona segura, ritmo de campo)
python3 scripts/prepare.py

# 3. Lint (debe tener 0 errores)
npx hyperframes lint

# 4. Vista previa y renderizado
npx hyperframes preview
npx hyperframes render

# 5. Pipeline de audio
python3 scripts/gen_sfx.py              # sintetizar 14 SFX desde cero
python3 scripts/mix_audio.py            # VO + señales + base → master.wav
ffmpeg -i rendered.mp4 -i renders/master.wav \
  -c:v copy -c:a aac -shortest final.mp4

Cuadrícula de Anclaje (fijada en la parte inferior, invariante)

Cada escena usa la misma mitad inferior — solo la mitad superior se recompone:

AnclaElementoPosiciónAnimación
1KickerSuperior izquierdaDeslizar hacia arriba desde y:-26, fundido 0.32s
2HeroBanda superior (1–3 palabras)Escala 1.3→1, deriva 44px→0, deriva lenta hacia arriba
3CuerpoTarjeta / odómetro / líneasDeslizar hacia arriba 56px→0, escala 0.95→1
4ChipÁrea inferior (3–6 palabras)Deslizar hacia arriba 30px→0, fundido 0.26s
5PresentadorInferior derecha, recortado por el marcoEscala 0.92→1, y:46→0, fundido 0.34s

El fotograma 0 es un póster — la escena 1 (data-cover="1") se abre completamente compuesta.


Ciclo de Seis Colores de Fondo

Dos escenas vecinas nunca comparten un campo de fondo:

acento → fondo → tinta → secundario → terciario → cuaternario

prepare.py falla la compilación si dos escenas consecutivas comparten un campo.

Todos los pares texto/fondo cumplen con WCAG ≥ 4.5:1 de contraste.


Sistema de Sonido

Síntesis de SFX (sin descargas, sin licencias)

python3 scripts/gen_sfx.py crea 14 efectos de sonido:

SFXUso
pop.wavCada corte de escena
click.wav / key.wavElementos UI, marcado de lista
chime.wavRevelación / puntuación
ping.wavNotificación
notify.wavLlamada a la acción (CTA)
riser.wavGrandes giros antes del corte
impact.wavImpacto visual fuerte
whoosh.wavMovimiento rápido
error.wavError / rechazado

Hoja de Señales — assets/sfx/cues.json

Desplazamientos relativos a la sección (soportan regrabaciones de VO):

{ "at": "scenes", "file": "pop.wav", "gain": 0.5 }
{ "at": "vo2-0.30", "file": "riser.wav", "gain": 0.3 }
{ "at": "vo9+0.55", "file": "notify.wav", "gain": 0.4 }

Mezcla de Audio — scripts/mix_audio.py

  • VO + señales SFX + base musical → renders/master.wav
  • Mide la sonoridad con ebur128, corrige a -14 LUFS
  • Pico verdadero ≤ -1 dBTP
  • alimiter con level=false (evita la trampa del auto-nivel)
  • Base al 0.15 de volumen → -29 LUFS (~13 LU por debajo de -16 LUFS de VO)
  • Sin compresión por sidechain — la diferencia de nivel es la compresión

Temas Técnicos (animación automática + evidencia)

Cuando el guion contiene una palabra clave reconocida, el orquestador inserta:

ComponenteTratamiento
Diagrama SVGFlujo nodo-enlace con elemento en movimiento + animateMotion
Superposición de evidenciaTarjeta glassmorphism con insignias de fuente
TransiciónMotion blur antes de la animación
Señal de audioSFX "whoosh" al inicio de la animación

Reconocidas: tor, onion, vpn, proxy, isp, relay, network, packet, encryption, cybersecurity, dns, cdn, blockchain, ai, machine learning, y más.


Formatos de Guion de Entrada

Texto plano (auto-temporizado ~145 ppm)

¿El mismo currículum en todas partes? Por eso te rechazan.
Adáptalo por empresa.
Lee la **descripción del puesto**.
Un currículum no sirve para todas las empresas. Personaliza y consigue ser preseleccionado.

Segmentos con marcas de tiempo

[0-4s] ¿El mismo currículum en todas partes? Por eso te rechazan.
[4-10s] Adáptalo por empresa.
[10-14s] Lee la **descripción del puesto**.

Énfasis: **palabra** → alineado a la derecha, color de marca, peso 950, animación pop.


Archivos

ArchivoPropósito
generate.pyPunto de entrada CLI
orchestrator.pyPipeline: analizar → detectar → descomponer → generar escenas → construir raíz
design_system.pyTokens de diseño, reglas de alineación, validación
PARAMS.jsonEl ÚNICO archivo de diseño que editas
scripts/prepare.pyGate de validación + inyección de tokens
scripts/new_scene.pyGenerador de composiciones de escena con cuadrícula de anclaje
scripts/build_index.pyHTML raíz con temporización contigua + transiciones adaptativas
scripts/gen_sfx.pySíntesis de SFX desde cero
scripts/mix_audio.pyVO + señales + base → master.wav
assets/sfx/cues.jsonHoja de señales relativa a la sección
scenes.shPlantilla de lista de escenas reproducible
compositions/_scene-base.html.tmplEsqueleto de cuadrícula de anclaje
compositions/wipe.htmlTransición con motion blur
skill.md · skill.jsonDocumentación + esquema

Requisitos

  • Python 3 (biblioteca estándar)
  • HyperFrames CLI: npx hyperframes init / preview / render / lint
  • Node.js ≥ 22, FFmpeg
  • ffprobe (para medición de audio)

Licencia

MIT — constrúyelo, compártelo, vende videos con él.

Skills relacionados