Communitygithub.com

Ahmed-OC/motion-video-skills

Puerta de verificación y control de calidad para cualquier video renderizado (generado o no): inspecciona especificaciones contra lo esperado (duración, FPS, resolución, codec, pix_fmt, audio), mide la sonoridad integrada y normaliza a −14 LUFS con una recodificación solo de audio, genera hojas de contacto en mosaico y tiras de fotogramas consecutivos para revisión visual, ejecuta una pasada crítica estructurada con una rúbrica de puntuación y verifica el determinismo del render. Úsalo cuando el usuario pida comprobar, verificar, auditar, revisar, diagnosticar, normalizar o preparar un video para su publicación (MP4/WebM/MOV), o cuando un video «se vea raro» y quiera saber qué falla antes de volver a renderizar.

¿Qué es motion-video-skills?

Este skill de agente AI proporciona un flujo de trabajo completo de control de calidad (QA) para archivos de video, diseñado para ser el paso final antes de la publicación. Es compatible con cualquier archivo de video (MP4, WebM, MOV), independientemente de cómo se haya generado. El skill automatiza cuatro tareas principales: 1) inspección técnica que compara la duración, FPS, resolución, codec, formato de píxeles y presencia de audio contra las especificaciones deseadas; 2) medición y normalización de la sonoridad integrada a −14 LUFS (el estándar de las plataformas sociales) usando una recodificación de solo audio que preserva el video original; 3) generación de hojas de contacto visual (tiras de fotogramas) para detectar problemas de ritmo, claridad o composición; y 4) una pasada crítica estructurada que puntúa aspectos como el gancho inicial, legibilidad, animación, sincronización, consistencia de estilo y calidad de sonido. Además, incluye una verificación de determinismo para renders generados por código, asegurando que la misma entrada produzca siempre la misma salida. El skill está diseñado para usarse en plataformas como Claude Code, Cursor, Codex y cualquier terminal compatible con scripts Bash y FFmpeg.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Ahmed-OC/motion-video-skills/tree/HEAD/skills/video-qa

Preguntar en tu IA favorita

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

Documentación

Video QA – la puerta de publicación

Un video no está listo cuando se renderiza; está listo cuando se ha inspeccionado, VISTO en una hoja de contacto y normalizado. Este skill funciona con cualquier archivo, independientemente de cómo se haya creado.

1. Inspeccionar los hechos (nunca asumas)

scripts/probe.sh video.mp4

Compara cada valor contra lo solicitado (línea de tiempo, brief, especificaciones de la plataforma):

VerificaciónEsperado
duraciónduración solicitada ± 0.1 s
FPS / resoluciónFPS / W×H solicitados
codec / pix_fmth264 / yuv420p (yuvj420p = variante de rango completo, normalmente válido)
flujo de audiopresente si y solo si el video debe tener sonido
sonoridad integrada−14 ± 2 LUFS (las plataformas sociales normalizan cerca de −14)

Cualquier discrepancia es un error en el render, no una cuestión de gusto. Corrige el origen, vuelve a renderizar.

2. Sonoridad: medir → normalizar (solo audio, en segundos)

# medir
ffmpeg -hide_banner -i video.mp4 -af ebur128 -f null - 2>&1 | awk '/Integrated loudness/{getline; print}'

# normalizar a −14 LUFS (flujo de video copiado, sin recodificar)
ffmpeg -i video.mp4 -c:v copy -af "loudnorm=I=-14:TP=-1.5:LRA=11" -c:a aac -b:a 192k video_norm.mp4 \
  && mv video_norm.mp4 video.mp4

Nunca normalices «de oído» con un filtro de volumen: los LUFS son la unidad que realmente usan las plataformas.

3. Míralo: hoja de contacto + tiras

scripts/contact_sheet.sh video.mp4 contact.png 2 8x    # 1 mosaico / 0.5 s, 8 columnas
# 12 fotogramas consecutivos alrededor de un momento delicado (transición en T):
ffmpeg -y -ss <T-0.2> -i video.mp4 -frames:v 12 -vf "scale=320:-1,tile=6x2" strip_T.png

Lee la hoja como un fotograma de película: ¿el ritmo es visible? ¿los cortes coinciden con la rejilla del compás? ¿alguna escena está vacía o abarrotada? Las hojas de contacto ocultan la calidad del movimiento: mira SIEMPRE el video completo al menos una vez antes de dar el visto bueno.

4. Pasada crítica (el constructor no es el juez)

Revisa el RENDER – no la fuente, no las intenciones – puntuando cada aspecto sobre 10:

  1. Gancho – ¿el fotograma más impactante está en los primeros 2 segundos?
  2. Legibilidad – ¿el texto tiene el tamaño mínimo, está dentro de las zonas seguras, sin superposiciones/cortes, y se mantiene el tiempo suficiente?
  3. Animación – ¿sin easing lineal, entradas con múltiples propiedades, escalonamiento, salidas más rápidas que las entradas?
  4. Sincronía – ¿los eventos caen en la rejilla del compás/palabra?
  5. Consistencia de estilo – ¿una familia de paletas, un sistema tipográfico, transiciones unificadas?
  6. Sonido – ¿VO claro, música atenuada, sonoridad objetivo, sin clipping?

Protocolo: anota los 3 peores defectos CON marcas de tiempo → corrige exactamente esos → vuelve a renderizar → repuntúa. De 3 a 5 rondas hasta obtener ≥8/10 en todo es normal. Ejecuta la crítica en un contexto nuevo (o subagente): el autor del código es el peor revisor del código.

5. Determinismo (para videos generados/repetibles)

# dos huellas digitales de la misma entrada deben coincidir byte por byte
ffmpeg -i video.mp4 -map 0:v -f framemd5 - | sha1sum

Misma canalización, misma entrada → hash diferente significa tiempo oculto del reloj de pared, aleatoriedad sin semilla o estado acumulado: corrige el generador, no «vuelvas a intentarlo».

6. Lista de verificación de entrega

video.mp4        H.264, yuv420p, +faststart, −14 LUFS
poster.png/jpg   el fotograma de gancho
contact.png      la tira de fotogramas a 2 FPS
fuentes          lo que sea que genere el video (editable > final)

Indica al usuario exactamente qué archivo debe editar para cambiar una cosa, y el comando para volver a renderizar.

Regla de la evidencia

Cuando un revisor (humano o modelo de visión) afirme un defecto geométrico («el texto está cortado», «los elementos se superponen»), confírmalo con una medición (inspección en el reproductor, muestra de píxeles o las propias métricas del código generador) antes de «arreglar» un no-error. Los revisores alucinan márgenes con mucha más frecuencia de la que los renders cortan texto.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills relacionados