major-ai-skills
Version:
Installable agentic skills / AI agent skills (SKILL.md) for Claude Code, Cursor, Codex CLI, Gemini CLI & Antigravity - 402+ professional app, token-efficiency, and common-sense skills. SEO/GEO ready.
132 lines (101 loc) • 7.84 kB
Markdown
title: "Blackmagic DaVinci Resolve Studio AI Skill Guide (Gemini)"
description: "Comprehensive operational skill specification for Google Gemini to visually diagnose, automate, script, and troubleshoot DaVinci Resolve Color node graphs, Parade/Vectorscope scopes, Edit timelines, and Fusion VFX flows."
category: "Professional Video Editing, Color Grading & VFX"
tags: ["davinci-resolve", "color-page-nodes", "waveform-scopes", "vectorscope", "gemini", "edit-timeline", "fusion-flow"]
# Blackmagic DaVinci Resolve Studio AI Skill Guide (Gemini)
## Overview & Engine Architecture
DaVinci Resolve Studio provides a comprehensive visual post-production workspace featuring the **Color Page Node Graph (Serial, Parallel, Layer, Splitter/Combiner nodes)**, **Real-Time Video Scopes (Parade, Waveform, Vectorscope, CIE Chromaticity)**, the **Edit Page multi-track timeline**, and **Fusion node dataflow graphs**. Gemini acts as an AI Colorist Reviewer and Post-Production Quality Control (QC) Specialist, specializing in **multimodal Color Node Graph inspection**, **video scope exposure & white balance evaluation**, **Broadcast Legal gamut verification**, and **Fusion compositing flow diagnostics**.
### Visual Analytics & Post-Production Console Stack
```
┌─────────────────────────────────────────────────────────────┐
│ DaVinci Resolve Visual Operations │
│ │
│ Editing & Assembly Viewports │
│ ├── Edit Page Timeline (Video/Audio Tracks, Transitions) │
│ ├── Source & Record Viewers (Safe Area Guides, Timecode HUD│
│ └── Inspector (Transform, Dynamic Zoom, Composite Modes) │
│ │
│ Color Grading & Video Scopes │
│ ├── Color Page Node Graph (Key Inputs/Outputs, Alpha Masks)│
│ ├── Video Scopes HUD (RGB Parade, Waveform, Vectorscope) │
│ └── Primary Wheels (Lift, Gamma, Gain, Offset, HDR Wheels) │
│ │
│ Visual Effects & Audio Mixing │
│ ├── Fusion Node Flow (MediaIn, Merge, ColorCorrector, Out) │
│ └── Fairlight Mixer (Dynamics EQ, Compressor, Bus Limiter) │
└─────────────────────────────────────────────────────────────┘
```
## Operational Capabilities & Agent Directives
1. **Multimodal Color Node Graph Inspection**: Analyze screenshots of the Color Page node tree to detect un-wired alpha keys, improper parallel mixer blending weights, and illogical node sequences (e.g. applying sharpening before noise reduction).
2. **Video Scope Exposure & White Balance Analysis**: Review RGB Parade and Waveform monitors to detect clipped highlights ($>1000\text{ nits}$ in HDR or $>1023$ in 10-bit SDR), crushed shadows ($<0\text{ IRE}$), and color cast imbalances in neutral gray tones.
3. **Vectorscope Skin Tone Line Verification**: Evaluate Vectorscope charts to ensure subject skin tone hue angles align with the standard $I$-bar skin tone indicator line regardless of ethnicity.
4. **Fusion VFX Dataflow Auditing**: Inspect Fusion node trees to verify that `Background` and `Foreground` inputs on `Merge` nodes are correctly assigned to prevent inverted alpha transparency stacking.
## Production Python Automation: Automated EDL / Final Cut XML Timeline Inspector
Run this script to parse and audit edit decision lists (EDL / FCPXML) for missing clip durations and timecode gaps before conforming in DaVinci Resolve:
```python
"""
DaVinci Resolve Timeline Conform & EDL/XML Auditor
Parses FCPXML / EDL files to verify clip references, start/end timecodes, and frame rates.
"""
import sys
import os
import xml.etree.ElementTree as ET
def audit_fcpxml_timeline(xml_path: str):
if not os.path.exists(xml_path):
print(f"Error: XML file '{xml_path}' not found.")
return
print(f"--- [INSPECTING TIMELINE CONFORM XML: {xml_path}] ---")
try:
tree = ET.parse(xml_path)
root = tree.getroot()
# Extract Format & Frame Rate
format_elem = root.find(".//format")
if format_elem is not None:
width = format_elem.attrib.get("width", "1920")
height = format_elem.attrib.get("height", "1080")
frame_duration = format_elem.attrib.get("frameDuration", "100/2400s")
print(f"• Resolution: {width} x {height}")
print(f"• Frame Rate: {frame_duration}\n")
# Scan Video Clips in Sequence
clips = root.findall(".//asset-clip") or root.findall(".//clip")
print(f"Detected {len(clips)} Timeline Event(s):\n")
for idx, c in enumerate(clips[:10], 1):
name = c.attrib.get("name", "Unnamed Clip")
duration = c.attrib.get("duration", "N/A")
start = c.attrib.get("start", "0s")
print(f"• Event #{idx:>2}: {name:<30} | Start: {start:<10} | Duration: {duration}")
print("\n✅ XML timeline structure validated for DaVinci Resolve import.")
except Exception as e:
print(f"Failed to parse XML: {e}")
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Usage: python3 audit_timeline.py <Sequence.fcpxml>")
sys.exit(1)
audit_fcpxml_timeline(sys.argv[1])
```
## Technical Troubleshooting Matrix
| Issue & Visual Signature | Root Cause Analysis | Diagnostic & Resolution Pathway |
| :--- | :--- | :--- |
| **RGB Parade Shows Crushed Blue Channel in Shadows** | Dark areas contain severe blue color cast or camera black balance shifted. | In Color Page $\rightarrow$ Primaries, raise **Lift Blue** or adjust **Color Temp / Tint** wheels while observing RGB Parade. |
| **Vectorscope Trace Spills Outside Broadcast Target Circle** | Oversaturated colors violating Rec.709 gamut broadcast legal limit ($100\%$ saturation). | In Color Page $\rightarrow$ Curves, pull down **Hue vs Sat** curve on the out-of-gamut color or insert a **Color Space Transform** with Gamut Mapping. |
| **Timeline Media Shows "Media Offline" (Red Screen)** | Source media files moved, renamed, or external drive unmounted. | In Media Pool $\rightarrow$ Right-click offline clips $\rightarrow$ Select **Relink Selected Clips** $\rightarrow$ Navigate to current media directory. |
| **Fusion Viewer Shows Black Screen After Merge Node** | Inverted Foreground/Background inputs on Merge node with an opaque background layer. | Select Merge node $\rightarrow$ Press `Ctrl + T` (Windows) or `Cmd + T` (macOS) to swap Foreground and Background inputs. |
## Command Line Syntax & Server Control
```bash
# Launch DaVinci Resolve Studio
"C:\Program Files\Blackmagic Design\DaVinci Resolve\Resolve.exe"
# Query Connected Blackmagic DeckLink / UltraStudio Capture Devices
# (View in DaVinci Resolve Preferences -> Video and Audio I/O)
```
### Key Configuration Locations
- **Resolve Preferences**: `%APPDATA%\Blackmagic Design\DaVinci Resolve\Preferences\`
- **Project Database Config**: `C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\`
## Agent Operational Directive
> **MANDATORY**: When assessing color grading in DaVinci Resolve, always verify skin tones against the Vectorscope $I$-bar axis and ensure blacks do not crush below $0\text{ IRE}$ on the Waveform scope.