gnommo.sh:
- Bash wrapper for easy CLI usage
- Commands: validate, transcribe, align, render, all
- `gnommo.sh -p video1 all` runs full pipeline
Slide scaling:
- Slides now scale to full frame (1920x1080)
- Transparent areas show through to layers below
- Positioned at 0,0 for full overlay
targetheight percentage:
- Supports percentage values like "100%"
- Calculates actual height from frame resolution
- "100%" on 1080p = 1080px height
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
New commands:
- `transcribe`: Uses Whisper to generate word-level timestamps from video
- `align`: Matches manuscript markers to transcript, outputs transcript.csv
Workflow:
1. gnommo transcribe video.mov → video.transcript.json
2. gnommo align project/ → transcript.csv with markers at aligned times
Alignment uses fuzzy text matching to find the first phrase after each
marker in the manuscript, then locates it in the transcript. Applies
configurable offset (default -1s) so slides appear before speech.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- project.json now supports "slides" field pointing to slides.json location
- Slide images are loaded from same directory as slides.json
- Validation detects malformed markers (missing ], extra spaces)
- Reports line numbers for each malformed marker
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Parses slide directories exported from Keynote and generates
slides.json with proper [S1], [S2], etc. mappings.
- Extracts slide numbers from filenames like Video1.001.png
- Supports png, gif, pdf, jpg formats
- Outputs slides.json in the same directory as images
- --type flag to set slide layout (default: square)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
A code-first, declarative video editing system that compiles text
documents into rendered video via FFmpeg. Uses a compiler-style
ETL pipeline: Extract (parse inputs) → Validate → Transform
(build timeline) → Render (FFmpeg).
Features:
- Text-based project definition (manuscript, transcript, JSON configs)
- Slide markers [S1], [S2] in transcript map to timed overlays
- Strict validation with fail-fast error reporting
- FFmpeg filter_complex generation with time-based enables
- CLI with validate/render/dry-run modes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>