rainbow-dragon/README.md

62 lines
2.8 KiB
Markdown
Raw Permalink Normal View History

# Rainbow Dragon (Forge)
On-set live grading + DIT toolkit. Grades live **in the camera** over IP — no LUT box
required — plus verified offload, ASC MHL, clip logging, and proxy generation.
Sister product to dragonflight.
## What it does
- **In-camera live grading over IP**
- ARRI ALEXA 35 / Mini LF — CAP protocol (binary TCP :5055): native ASC CDL push,
3D LUT (experimental), EVENT-driven metadata
- RED DSMC3 (Komodo/Raptor) — RCP2 (WebSocket :9998): native CDL via per-channel params
- Sony VENICE 2 — monitoring-only (protocol closed; grade via SDI chain)
- **Node-based grade engine** — input transform (LogC4 / Log3G10 / S-Log3 + gamuts),
CDL, saturation, monotone curves, 3D LUT, output transform; flattens to camera-ready
looks with CDL-split for live trim
- **Multicam** — gang slots, per-camera capability-aware flattening, debounced push
- **Auto clip logging** — rec events → shot records w/ camera metadata + grade snapshot
- **Deliverables** — ALE, CMX3600 EDL (ASC_SOP/SAT), CDL/CCC, CUBE, CSV
- **Offload** — multi-destination verified copy (xxHash64/MD5), **ASC MHL v2.0**
manifests (validates against official XSD), tamper detection, HTML/CSV reports
- **Proxies** — ffmpeg ProRes/DNxHR/H.264, grade bake via LUT, TC/clip burn-ins,
watch folders
- **Panels** — Tangent Wave control mapping (Hub TIPC shim lands in macOS phase)
## Status
Core engine + protocol layer complete: **200 tests**, all camera drivers verified against
wire-faithful simulators built from real protocol research (`docs/research/`).
macOS app (SwiftUI + Metal preview + DeckLink + Tangent Hub) is the next phase.
## CLI
```
forge sim # run an ARRI CAP camera simulator
forge status --host <ip> --port 5055 # connection/rec state + metadata
forge push --host <ip> --look l.json --split-cdl
forge export --db forge.db --day "Day 01" --format ale|edl|ccc|cube|csv --out f
forge offload <card> --to /raid --to /shuttle --report report.html
forge verify <manifest.mhl>
forge proxy --db forge.db --day "Day 01" --media /raid --out /proxies --burn-look
```
## Build
Swift 6.0+, Linux or macOS:
```
swift build && swift test
```
## Layout
- `Sources/ForgeColor` — color math (CDL, transfer functions, LUTs, curves)
- `Sources/ForgeGrade` — node stack, flattening, snapshots
- `Sources/ForgeCamera*` — driver seam + ARRI/RED/Sony drivers
- `Sources/ForgeSim` — protocol-faithful camera simulators
- `Sources/ForgeLogger` / `ForgeLibrary` — clip logging, SQLite shot store
- `Sources/ForgeExport` / `ForgeOffload` / `ForgeProxy` — deliverables, offload/MHL, proxies
- `Sources/ForgePanel` / `ForgeVideo` — control surfaces, video I/O seams
- `docs/plans/` — implementation plans; `docs/research/` — protocol + competitive research