Communitygithub.com

eternityspring/video-shots - Desglose de Video

Desglose de video: divide un video finalizado en una tabla de análisis cuadro por cuadro: duración de cada toma, tipo de plano, categoría, movimiento de cámara y contenido visual. 14 controles de calidad deterministas. Cero dependencias, cero API keys, solo Node.js y ffmpeg.

¿Qué es video-shots - Desglose de Video?

Esta habilidad permite desglosar automáticamente un video completo en un análisis cuadro por cuadro, generando una tabla detallada con la duración, el tipo de plano (close-up, medio, general, etc.), la categoría (diálogo, acción, etc.), el movimiento de cámara (pan, tilt, dolly, etc.) y la descripción visual de cada toma. Utiliza una arquitectura híbrida: el modelo de IA solo evalúa los cuatro aspectos que realmente necesita (plano, categoría, movimiento y descripción), mientras que el resto del trabajo (detección de cortes con ffmpeg, cálculo de duración, movimiento medio de píxeles) se realiza mediante código determinista. Cada evaluación del modelo es verificada inmediatamente contra datos medidos; por ejemplo, si el modelo afirma un movimiento de cámara pero los valores reales de cambio de píxeles son casi nulos, la afirmación es rechazada por una "puerta de calidad". La salida incluye un archivo shots.json, una tabla en Markdown y un informe interactivo en una sola página HTML (sin dependencias, funciona offline al hacer doble clic). El informe contiene un reproductor de video que sincroniza el resaltado de tomas, una línea de ritmo de tomas, una tabla de tomas buscable/filtrable/ordenable (vista lista o tarjetas, con cuadros clave inicial y final lado a lado), distribuciones de planos, categorías y movimientos, personajes que aparecen, puertas de calidad y exportación a JSON. Compatible con Claude Code, Cursor y plataformas que ejecuten comandos Node.js. Útil para editores de video, directores, analistas de contenido y cualquier persona que necesite un desglose detallado y verificable de un video.

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

Preguntar en tu IA favorita

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

Documentación

eternityspring/video-shots

Desglose de video: divide un video finalizado en una tabla de análisis cuadro por cuadro — duración de cada toma, tipo de plano, categoría, movimiento de cámara y contenido visual.

La división del trabajo está grabada en piedra: todo lo medible se hace con código (los puntos de corte provienen de la detección de escenas de ffmpeg, la duración es la resta de puntos de corte, el movimiento es la mediana de las diferencias cuadro a cuadro). El modelo solo juzga las cuatro cosas que realmente debe juzgar (plano / categoría / movimiento / contenido), y luego cada juicio es verificado al instante por el código — si afirma paneo, tilt o dolly pero la medición real muestra movimiento casi nulo, la puerta lo bloquea directamente.

La visualización del video se hace mediante una hoja de contactos (se combinan el primer cuadro y el último cuadro de cada toma en una imagen grande, veinte o más tomas por pantalla, la comparación a/b revela el movimiento), no se pasa una por una. Para detectar cortes faltantes o sobrantes, se usa recut para agregar o fusionar cortes, renumerando y recalculando duraciones automáticamente; los bordes modificados a mano no pasan la puerta.

Salidas: shots.json + tabla de tomas en Markdown + informe interactivo de desglose en una sola página: reproductor incorporado (al reproducir, se resalta la toma actual; al hacer clic en una toma, salta a ella), línea de ritmo de tomas, tabla de tomas buscable, filtrable y ordenable (vista de lista o tarjetas, con cuadros clave inicial y final lado a lado, al hacer clic en la imagen se abre en grande), distribuciones de planos, categorías y movimientos, personajes que aparecen, puertas de calidad y exportación a JSON. Archivo único, cero dependencias, se abre con doble clic sin conexión.

14 puertas de calidad verificadas de manera determinista por el script.

Cero dependencias, cero API key, solo Node.js y ffmpeg.

Usar cuando se pida "desglose de video" o "análisis cuadro por cuadro".

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

eternityspring/reelbench-skills

把一条视频重建成「只有画面和声音」的干净文件——**源片的元数据一概不搬**: GPS、设备型号、账号 ID、创建时间、章节、GoPro 的遥测轨,全部留在原地。 走的是白名单而不是黑名单:不列要删什么,只说带什么过去(画面一条流、声音一条流), 隐私保证来自结构,不来自枚举。 难点不在容器 tag,在**看不见的那几层**:x264 把完整编码参数写成 SEI 塞在码流里、 AAC 把版本号写进 DSE、avc1 的 compressorname 里还有一份——`ffprobe` 一个都看不见。 五个藏身处逐一堵死,每一处都有实测。 默认 `--mode copy`:**画面逐字节照搬**(cmp 验证过),只重编音频,53 秒的片子 1.3 秒跑完; `--mode encode` 完整重编码,多杀掉码流域的东西。 验收不靠声称:把源片所有元数据字符串当「针」,在输出文件里做**字节级扫描**, 扎到一根就红。12 道门全部由脚本确定性检查。 零依赖、零 API key,只要 node 和 ffmpeg。 Use when asked to 清元数据、去元数据、抹掉视频信息、视频隐私、去水印信息、 strip video metadata、remove exif from video、scrub video。

eternityspring/reelbench-skills

把拉片数据和原片合成一条**能直接看的视频**:一边是画面,一边是这一镜的分镜信息 (镜号、起止、时长、景别、类别、运镜、画面描述、台词),**镜头切了信息跟着切**, 镜头表自动滚动并高亮当前这一镜。 版式只看原片的宽高比:**横版 / 方版 → 画面在上、信息在下;竖版 → 画面在左、信息在右**, 画面永远原样缩放,不裁不拉。 镜头表**随播放滚动**:切点处滚一小段把当前镜头带到锚点、随后停住,高亮条同步滑过去。 实现上只截三张图(底板 + 铺开的长图 ×2),滚动与高亮由 ffmpeg 按时间裁窗, **布局全在 scripts/panel.css 里,改它就能改版式**,不用碰脚本。 吃 video-shots 产出的 shots.json(有 frames/ 就把关键帧当缩略图用)。 零 npm 依赖,用 ffmpeg 合成、无头浏览器渲面板。 Use when asked to 导出视频、合成视频、分镜视频、带分镜信息的视频、解说版视频、 video with shot info、annotated shot video。

Skills relacionados