Go to file
m3ultra d4257d8f99 chore: launchd instance runs sam2.1-hiera-large (final-quality mattes)
Dev instances stay on small via the default; the always-on tailnet
instance behind digalot.fyi/rotogod/ gets the big model.
Measured on M3 Ultra MPS at 720p: click ~4s, propagate ~1.7 fps.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 16:38:38 +10:00
deploy chore: launchd instance runs sam2.1-hiera-large (final-quality mattes) 2026-07-27 16:38:38 +10:00
rotogod feat: browser upload (raw-body, 8g cap) + click-to-download exports 2026-07-27 13:30:49 +10:00
web feat: browser upload (raw-body, 8g cap) + click-to-download exports 2026-07-27 13:30:49 +10:00
.gitignore feat: ROTOGOD v0 — SAM-2 rotoscoping web app (load/scrub/trim → click actor → track → alpha export) 2026-07-26 22:02:20 +10:00
DESIGN.md feat: ROTOGOD v0 — SAM-2 rotoscoping web app (load/scrub/trim → click actor → track → alpha export) 2026-07-26 22:02:20 +10:00
README.md feat: ROTOGOD v0 — SAM-2 rotoscoping web app (load/scrub/trim → click actor → track → alpha export) 2026-07-26 22:02:20 +10:00
requirements.txt feat: ROTOGOD v0 — SAM-2 rotoscoping web app (load/scrub/trim → click actor → track → alpha export) 2026-07-26 22:02:20 +10:00
run.py feat: ROTOGOD v0 — SAM-2 rotoscoping web app (load/scrub/trim → click actor → track → alpha export) 2026-07-26 22:02:20 +10:00

ROTOGOD

Click an actor, get an alpha channel. Local SAM 2 rotoscoping on Apple Silicon.

# setup (once)
uv venv -p 3.12 .venv
uv pip install --python .venv/bin/python -r requirements.txt

# run
.venv/bin/python run.py --port 8484        # → http://localhost:8484
  • Load a clip by absolute path, scrub with the slider / arrow keys / mouse wheel.
  • i / o set in/out points. Trim exports a scene cut (output/).
  • Start roto locks the in/out range into a SAM 2 session. Left-click = include, right-click = exclude. Multiple objects supported. Track propagates through the range.
  • Fix drift by clicking on the bad frame, then Track again from there.
  • Export ProRes 4444 (alpha), WebM (alpha), matte, or greenscreen.

Model defaults to facebook/sam2.1-hiera-small; for final-quality masks run with ROTOGOD_SAM2=facebook/sam2.1-hiera-large. See DESIGN.md.