Communitygithub.com

web594/resolver-flujo-trabajo-multicam

Skill para agente Claude que automatiza la creación de proyectos multicámara en DaVinci Resolve Studio: sincronización de audio, corte automático a partir de transcripción, corrección de color con nodos compartidos, intercambio de ángulos borrosos/sacudidos y superposición de títulos.

¿Qué es resolver-flujo-trabajo-multicam?

Este skill permite a un agente Claude crear de forma autónoma un proyecto multicámara completo en DaVinci Resolve Studio, desde la sincronización de audio hasta la entrega final con títulos y gráficos. Está diseñado para una pipeline de producción probada, donde Claude maneja todos los pasos automatizados, incluyendo la transcripción con faster-whisper, la creación de un plan de corte basado en pausas del habla, y la construcción de clips multicámara mediante archivos DRT (DaVinci Resolve Timeline). La corrección de color se realiza con una cadena de nodos compartidos, aplicando una emulación de película o una cadena LUT, dependiendo del material de la cámara. El skill también maneja la verificación de sincronización, el intercambio de ángulos, y la creación de versiones para redes sociales (YouTube e Instagram), todo sin necesidad de intervención manual. Está optimizado para proyectos con múltiples cámaras, timecode compartido (Atomos AirGlu), y requiere que DaVinci Resolve tenga habilitado el scripting externo.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add web594/resolve-multicam-workflow

Preguntar en tu IA favorita

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

Documentación

Crear proyecto de cine multicámara en Resolve (wunder-media)

Pipeline probada de los proyectos Proyecto-A → Proyecto-C → Proyecto-B. Siempre seguir este flujo, no reinventar. Carpeta de trabajo por proyecto: C:\claude\resolve-prep\<nombrecorto>\.

Leer primero (en este orden)

  1. references/ablauf.md — los 8 pasos desde el material bruto hasta el montaje multicámara terminado con títulos. Las "decisiones" abiertas anteriormente ahora están respondidas en Permisos y respuestas permanentes — no preguntar de nuevo.
  2. references/api-werkzeuge.md — qué puede hacer Resolve mediante script (rctl.py, grade-set, node-add, Fusion, plantilla de título) y dónde están los límites duros de la API.
  3. references/fallstricke.md — trampas aprendidas a costa de errores. Antes de cada paso, comprobar brevemente si hay algo relevante para el paso actual. Esto evita la mayoría de los callejones sin salida.
  4. ⭐ references/farbgebung.md — qué skill de look se utiliza: el estándar es resolve-kino-look-nodekette, el sustituto es resolve-lut-look-kette; primero las LUTs/herramientas compradas; y la verificación de cámara (Cámara de consumo Rec.709 → emulación de película no o solo al % mínimo). Leer antes de cada corrección de color. Después references/kino-look-nodekette.md — la misma cadena como receta con todos los valores medidos y la plantilla DRX (cadena completa en 0.04 s en lugar de una hora haciendo clics).
  5. ⭐ references/vorbild-projekt.md — el modelo para proyectos multicámara: estructura de carpetas, estado deseado de la mediateca (incluyendo el contenedor Anlegen), el flujo de color probado y el límite Claude ↔ Humano. Leer en cada proyecto multicámara — describe exactamente el estado hasta el que Claude crea de forma autónoma.
  6. references/timecode-sync.md — variante del paso 2: las cámaras funcionan con Atomos AirGlu y timecode compartido → offsets directamente de los archivos en lugar de correlación cruzada. Contiene la configuración del equipo (Servidor/Cliente, región Europa, la trampa "La fuente se queda colgada en HDMI") y la contraprueba obligatoria vorlagen/tc_pruefen.py. Leer cuando el material bruto provenga de Shogun/Ninja Ultra y tenga timecode.
  7. references/grafik-einblendungen.md — paso 9: integrar infografías/overlays y entregar el video (YouTube larga + Instagram corta). En series de charlas/entrevistas con ponentes recurrentes, leer siempre antes de crear gráficos.
  8. vorlagen/ — scripts de plantilla funcionales (del Proyecto-B, el proyecto más limpio). Copiar a C:\claude\resolve-prep\<nombrecorto>\, ajustar las constantes de cabecera, ejecutar. overlay_tools.py se ejecuta directamente (check / zoomsafe / mov / place).

Resumen del flujo

#PasoHerramienta
1Revisar material bruto (ffprobe: cámaras, partes, fps, canales de audio, Log/Rec709)references/ablauf.md
2Sincronizar audio con la pista principal (Tascam/dr10L), offsets como JSONvorlagen/sync.py
2bEn grabadoras Atomos con AirGlu: offsets directamente del timecode en lugar de correlación cruzada — demostrar previamente con tc_pruefen.pyreferences/timecode-sync.md, vorlagen/tc_pruefen.py
3Proyecto + contenedores + importación + línea de tiempo fuente por cámaravorlagen/prep.py
4Transcripción (faster-whisper large-v3, CUDA)vorlagen/transcribe.py
5Plan de corte automático a partir de pausas del habla (parámetros tranquilos, ver abajo)vorlagen/make_cutplan.py
6Línea de tiempo de montaje. Con ≥2 cámaras SIEMPRE multicámara con cortes — construir clip multicámara mediante DRT, NO por GUIvorlagen/mcbuild/build_mc_drt.py
6bPrueba de imagen y sonido (obligatoria): la línea de tiempo de montaje está ESTIRADA con respecto al tiempo de audio (lugares saltados sin imagen) - dividir el audio, luego medirvorlagen/sync_pruefen.py
7Verificar (huecos, solapamientos, ángulos, renderizado de negro), luego corrección de color (skill resolve-kino-look-nodekette, nodos compartidos)vorlagen/verify_cut.py, references/farbgebung.md
8Postproducción: encontrar el inicio correcto, eliminar material organizativo, intercambiar ángulos borrosos/sacudidos; título de apertura (overlay)references/ablauf.md
8bLimpiar + entregar: líneas de tiempo intermedias al contenedor Anlegen, verificar estado deseado contra el modeloreferences/vorbild-projekt.md
9Superposición de gráficos + entrega (infografías de la transcripción, Instagram corto 9:16, subtítulos, −14 LUFS)references/grafik-einblendungen.md, vorlagen/overlay_tools.py, vorlagen/infografik/, vorlagen/verify_overlays.py, vorlagen/instagram_kurz.py

Requisito siempre: Resolve en ejecución, Configuración → Sistema → General → "Scripting externo" = Local. Si scriptapp("Resolve") is None → reiniciar Resolve por completo.

⛔ NO OLVIDAR: El multicámara se crea COMPLETAMENTE mediante script — nunca con el ratón

Instrucción del usuario (27.07.2026, explícitamente): Este conocimiento no debe perderse de nuevo, y debe realizarse ASÍ, no de otra manera. Versiones anteriores de este skill afirmaban que el clip multicámara "solo se podía hacer a mano en la GUI". Eso es falso. Se construye con vorlagen/mcbuild/build_mc_drt.py → import_mc2.py → verify_mc.py (verificado 27.07.2026, Resolve 21.0.3: clip multicámara + 21 ángulos cortados sin un solo clic).

Resumen del procedimiento (detalles en references/ablauf.md paso 6):

  1. Construir la línea de tiempo de montaje anidada (apply_cut.py) y exportarla como DRT (Timeline.Export(ruta, 1)).
  2. Desde un proyecto anterior cualquiera con multicámara exportar un DRT como modelo.
  3. build_mc_drt.py inserta en el nuevo DRT un elemento <Sm2MpMulticamClip> + un SeqContainer de definiciones (una pista por cámara, UserDefinedName = "Angle N", MediaRef = DbId de la línea de tiempo fuente) y redirige los clips de corte al multicámara.
  4. ImportTimelineFromFile → línea de tiempo de montaje multicámara terminada.

⭐⭐ La única trampa donde falla: La asignación Secuencia multicámara → contenedor de definiciones no está en el XML en texto plano, sino codificada en UTF-16 en los FieldsBlobs zstd de MpFolder.xml. Por lo tanto, nunca generar nuevos UUIDs — tomar los DbIds del elemento multicámara, secuencia y contenedor del modelo sin cambios (Resolve asigna identificadores nuevos al importar de todos modos). De lo contrario, se crea un clip multicámara sin ángulos: Frames 0, imagen negra.

Permisos y respuestas permanentes — NO preguntar más

El usuario lo ha decidido; Claude lo implementa sin preguntar y crea el proyecto hasta el montaje multicámara terminado y con corrección de color, incluyendo títulos, de forma autónoma.

Permisos solicitar al inicio (no preguntar individualmente):

  • Habilitar computer-use de inmediato: request_access(["DaVinci Resolve"]), motivo "Controlar Resolve (multicámara, corrección de color, títulos)". Cubre toda la pipeline; solo preguntar de nuevo si se necesita un programa ADICIONAL. Iniciar Resolve con open_application si es necesario.
  • Los scripts/verificaciones se ejecutan mediante Bash + py C:\claude\resolve-ctl\rctl.py … y los scripts de plantilla — parte fija, simplemente ejecutar (no es necesario preguntar).
  • Medios offline (el proyecto se creó en otro disco, p. ej., E:→F:)? Sin preguntar, volver a vincular: mp.RelinkClips(clips, r"<carpeta del proyecto en el disco actual>").

Respuestas técnicas permanentes (no preguntar de nuevo): 0. Ritmo de corte: ligeramente más tranquilo que antes (usuario, 27.07.2026). En el Proyecto-A, algunos cortes llegaban demasiado pronto: después de un corte, el espectador necesita unos segundos para adaptarse a la nueva imagen — si le sigue inmediatamente otro plano corto, parece apresurado. Unos segundos más por plano es suficiente. Valores en make_cutplan.py: MIN_SHOT 6.0, CUT_MIN 6.0, CUT_MAX 11.0, PARA_GAP 1.2, MAX_STD 50, CALM_GAP 12.0 (pausa de calma: después de un cutaway, no hay uno nuevo durante ese tiempo), división mecánica 55/42/10. Además: primer tramo siempre cámara principal y sin cutaways antes del inicio del contenido (ANFANG), de lo contrario, justo después del comienzo del video, hay un corte.

  1. ≥2 cámaras → SIEMPRE entregar el multicámara montado (clip multicámara real mediante construcción DRT, vorlagen/mcbuild/), para que el usuario pueda cambiar cada clip a otra cámara al editar. No preguntar más "Anidación o multicámara". ⭐⭐ Esto también aplica a CUALQUIER video derivado — versión corta, extracto, copia de trabajo, versión para Instagram (usuario, 23.08.2026, explícitamente): Deben ser líneas de tiempo multicámara reales con los ángulos del montaje principal, de lo contrario, el usuario no puede intercambiar ningún plano durante el montaje fino. ⛔ AppendToTimeline con el clip multicámara NO es suficiente — aunque los clips multicámara terminan en la línea de tiempo de destino, todos en el Ángulo 1; la selección de ángulo se pierde. El ángulo solo está en el FieldsBlob del clip y no se puede configurar mediante la API. Camino correcto: vorlagen/kurzvideo_drt.py + vorlagen/kurzvideo_import.py (exportar el montaje principal como DRT, tomar los clips de los pasajes deseados con FieldsBlob sin cambios, recalcular Start/Duration/In, importar; luego agregar el audio por pasajes mediante la API en A1). La corrección de color viene en el DRT. 1b. ⭐⭐ Fotogramas de reproducción = Fotogramas de línea de tiempo — ESTABLECER INMEDIATAMENTE al crear (usuario, 23.08.2026). proj.SetSetting("timelinePlaybackFrameRate", "<fps>") debe estar en el mismo bloque de configuración que timelineFrameRate, antes de que se cree la primera línea de tiempo. Si está incorrecto (a menudo 24 por defecto), el sonido suena mal al reproducir — y tan pronto como hay una línea de tiempo en el proyecto, SetSetting rechaza el cambio (False, incluso a nivel de línea de tiempo). En la interfaz gráfica aún se puede: engranaje abajo a la derecha → Configuración principal → Formato de línea de tiempo → escribir "Fotogramas de reproducción" → Guardar. Configurarlo al crear evita este rodeo.
  2. Look — el estándar está fijado, NO preguntar la dirección, simplemente construirlo (usuario, 18.08.2026). Detalles y la verificación de cámara: references/farbgebung.md.
    • ⭐ Estándar: Skill resolve-kino-look-nodekette — la cadena de 4 nodos Emulación de película → Balance de blancos+Brillo (ajustable) → LUT de acabado (40%) → Generador de look de cine (Halación/Viñeta). Transferible completamente mediante DRX (0.04 s). Necesita proyecto en DaVinci YRGB (no Color Managed).
    • Sustituto: Skill resolve-lut-look-kette — la misma idea como una cadena pura de LUT (Log→ARRI Rec.709 · nodo ajustable · Rec.709→ARRI LogC · Emulación de película · Look de cine). Usar cuando falten plugins/no coincidan con la cámara, una serie ya esté construida sobre ella o el usuario lo desee.
    • En ambas cadenas, primero las LUTs y herramientas COMPRADAS; las versiones gratuitas solo si falta una herramienta o la cámara no tiene perfil en el plugin.
    • ⚠️ Antes de construir, verificar qué cámaras están en el proyecto. Material Log (FS7 II, S-Log3) → cadena según lo previsto. Cámara de consumo Rec.709 (Sony AX100, CX900E y similares) → emulación de película no o solo al % mínimo, de lo contrario los colores se vuelven antinaturales; obtener el carácter cinematográfico a través de los nodos restantes. → Siempre construir la cadena de nodos, sin preguntar. Solo hacer confirmar el brillo fino.
  3. LUTs SOLO para estos tres pasos de look. Cada corrección (balance de blancos, brillo, dominante de color/magenta/azul, saturación, contraste) como valor de nodo ajustable de Resolve, nunca como LUT adicional horneada — para que se pueda rastrear qué se desvía del original y se puedan restablecer valores individuales.
  4. ⭐ Mismo contenido de nodos en todas las cámaras = NODOS COMPARTIDOS (Shared Nodes): crear los nodos de look idénticos (conversión ARRI, stock de película, cine) como nodos compartidos, para que un cambio afecte a TODOS los clips/cámaras. Solo las correcciones específicas de cámara (p. ej., ajuste de lejos a cerca) permanecen locales. Detalles en references/ablauf.md/fallstricke.md. 4b. ⭐⭐ Nodo de balance de blancos: UN nodo compartido por ángulo — siempre crearlo así (usuario, 24.08.2026, explícitamente "guárdalo para siempre, por favor"). El nodo ajustable 2 ("Balance de blancos + Brillo") se convierte por ángulo en un nodo compartido, que se aplica a todos los clips de este ángulo — entonces una corrección cambia todo el ángulo a la vez. No se comparte entre ángulos (cada ángulo tiene sus propios valores). Los nodos de look 1/3/4 ya están compartidos. Receta (verificado 24.08.2026 en Proyecto-M, 3 ángulos × 21/22 clips):
    1. En la línea de tiempo … import del ángulo, ir a un clip de referencia (SetCurrentTimeline + SetCurrentTimecode, OpenPage("color")).
    2. Un solo clic de computer-use: hacer clic derecho en el Nodo 2 → "Guardar como nodo compartido". (La API no puede hacer esto; un clic es razonable.)
    3. Todo lo demás mediante script: refItem.CopyGrades(todos_los_demás_clips_del_ángulo) — CopyGrades transfiere nodos compartidos como el mismo objeto, la etiqueta se convierte en … Shared Node <n> en todas partes. Esto también se aplica entre líneas de tiempo: las copias de las líneas de tiempo de ángulo que se crean al importar el DRT de los videos cortos (… nah import 1…12), abarcarlas en la misma operación, de lo contrario los videos cortos se quedan con una corrección de color antigua, no transferida.
    4. Verificar: leer las etiquetas de nodo (¿todas iguales?) y medir un fotograma por ángulo.
    5. Hacerlo de paso: cambiar la interpolación de LUT a tetraédrica — Shift+9 → Color Management → "Look-up-Tables" → "Interpolación 3D-LUT" → Guardar (sin clave API).

4c. ⭐ Eliminar las copias de nodos compartidos no utilizadas al final (usuario, 27.08.2026, para siempre). Cada aplicación de una DRX/cadena de look que contenga nodos compartidos crea en la lista de nodos compartidos una nueva entrada, en lugar de usar la existente — con la aplicación por clip, por lo tanto, una copia por clip (Proyecto-M: 198 entradas, de las cuales solo 12 usadas, 186 archivos muertos, todas byte-idénticas). La imagen sigue siendo correcta, pero la lista se vuelve inutilizable y la base de datos del proyecto crece.

  • Evitar: aplicar la cadena una vez

…

[truncado para la traducción]

Skills relacionados