mocapgod/docs/DECISIONS.md
type-two 9db4fec988 Lane B / session-5 item 2: draft SKEL Path-A commercial-license email
Ready-to-send draft in docs/DECISIONS.md for John to send to ps-license@tue.mpg.de
(indie AU dev, in-pipeline use, SKEL files not redistributed — only retargeted
motion ships). Path B continues; a grant converts B->A with zero pipeline rework.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 09:35:39 +10:00

8.8 KiB
Raw Permalink Blame History

Decisions needing John

Status 2026-07-17 (session 2): Lane B1's engine pick is REVERSED (Decision 1). The disk work (Decision 2) from the concurrent session is preserved intact. Corrected, license-verified analysis below + LICENSES.md. Prior "SMPL hard-stop avoided / go MoCapAnything" memo superseded (git @ 7819e12).

Decision 1 — pose engine: B1 picked an ANIMAL model for a HUMAN job; the gate is LIVE

RESOLVED 2026-07-17 — John chose Path B (run local, accept NC risk). Engine = HSMR → SKEL on the fleet. Ship only the retargeted mixamorig motion (no Max-Planck file redistributed); John explicitly accepts the judgment call that authoring game clips from an NC-licensed model is his risk. Path A (email MPI for a commercial licence) stays on the shelf as the clean upgrade if that risk ever needs retiring. MPS verified green on ultra this session (torch 2.13.0, mps_available=True, mps_built=True). Sole remaining blocker to a first forward pass: the gated SKEL download — John's manual step (register at skel.is.tue.mpg.de → download.php → skel_models_v1.1.zip, must be v1.1.1, unzip into .engine/HSMR/data_inputs/body_models/skel/ per HSMR docs/SETUP.md). Behind a login + NC-licence agreement, so it is John's to do — I can't create the account or accept the terms. Analysis below is retained for the record.

B1 chose MoCapAnything V2 for being MIT/MIT with no SMPL, and concluded "the SMPL hard-stop is avoided." Reading the actual repo this session shows why that's wrong: MoCapAnything is an animal motion-capture system — 71 animal retarget targets (Alligator…Tyranno), trained on zoo1030 (animals) + obj1k (objects), no human/biped/mixamorig reference and no fingers. MOCAPGOD's v1 job is capturing John (a human) onto mixamorig (PLAN line 1; the Lane B brief says "monocular human motion recovery"). MoCapAnything didn't dissolve the SMPL gate — it swapped in a task the gate doesn't cover. Wrong tool for the human path. (It's a clean, strong tool for creature NPCs — option C.)

Verified from license text this session (links/dates in LICENSES.md):

Human-capable option Code license Body model Body-model license On the fleet?
GVHMR / WHAM / TRAM / OnlineHMR (accuracy leaders) research/NC (GVHMR NC confirmed) SMPL NC — commercial via Meshcapade (quote) PyTorch→MPS ✓
HSMR (CVPR25 oral) / SKEL-CF (Nov 2025) MIT (HSMR) SKEL NC — commercial via MPI ps-license@tue.mpg.de PyTorch→MPS ✓ (unverified)
GEM-X (NVIDIA) Apache SOMA (not SMPL) commercial-ready CUDA-only — OFF fleet
MoCapAnything V2 MIT none — (clean) ✓ but animal-only ✗ for humans

No free-lunch, commercial-clean, on-fleet, world-grounded human model exists. SMPL and SKEL are both Max-Planck research licenses with an "email for commercial" path; the one clean-licensed human model (GEM-X) needs NVIDIA hardware the fleet lacks. Pick a direction:

A. License a body model, use a proven human model — RECOMMENDED. Email for an indie commercial license. Primary: SKEL → HSMR (code is MIT, outputs a biomechanical skeleton ideal for the mixamorig retarget) via ps-license@tue.mpg.de. Fallback: SMPL via sales@meshcapade.com (unlocks WHAM/TRAM, though their code licenses also need clearing). One email + likely a modest fee + a few days. Clean and shippable. I can draft the email; I can't send it.

B. SMPL-free-outputs path (PLAN Path B) — run locally, ship only your rig's motion. HSMR's code is MIT: run on the fleet, extract joint rotations, retarget onto YOUR mixamorig, ship only that — distribute no Max-Planck file. Zero cost, unblocks today. Risk: the NC licenses forbid "production of artefacts for commercial purposes"; whether authoring game clips counts is a legal judgment call. The clean mitigation (email MPI to ask) collapses into A. John-accepts-risk.

C. Reconsider scope — creatures now, defer the human license. MOCAPGOD's downstream is stylized NPCs + a centaur RPG; some targets aren't human. If the near-term need is creature NPCs, MoCapAnything (MIT, clean, on-fleet) does that TODAY; defer the human-capture license until you need your own DJ clips.

Recommendation A. Honest, cheap, converts B's grey into a clear yes. In parallel I keep MoCapAnything as the sanctioned creature engine (free upside, blocks nothing) and verify HSMR's MPS-runnability so we're ready when a license lands. I will not build the human v1 pipeline on an NC model without your explicit go (that's B).

Path A — SKEL commercial-licence email (READY TO SEND — John sends it himself)

Parallel risk-retirement (session-5 order 2). Path B ships meanwhile; if MPI grants a licence the grey area in Decision 1 disappears with zero pipeline rework (same HSMR/SKEL engine). Do not wait on the reply. John: fill the two [brackets], send from your address to ps-license@tue.mpg.de. I can't send email or create the account — this is yours.

To: ps-license@tue.mpg.de Subject: Commercial licence enquiry — SKEL body model (indie game developer)

Dear Perceiving Systems licensing team,

I'm a solo independent game developer based in Australia. I'd like to enquire about a commercial licence for the SKEL body model (v1.1.1, from skel.is.tue.mpg.de).

Use case. I'm building a small in-house tool that recovers 3D human motion from ordinary single-camera video of myself, to author animation clips for stylised characters in my own indie games. SKEL is used inside the pipeline at inference time (via the HSMR pose-recovery model) to estimate body pose.

Redistribution: none. The SKEL/BSM model files stay on my own machine — I do not redistribute them or any Max-Planck-derived asset. What ships in the games is only the resulting joint motion, retargeted onto my own separately-authored character skeletons (a Mixamo-style rig). No SKEL mesh, shape space, or model file is included or exposed in any shipped product.

Scale. Small and indie: modest commercial revenue, a single developer, no external funding.

Could you let me know whether an indie / small-developer commercial licence is available for this kind of in-pipeline, non-redistributed use, and the terms and any fee? I'm happy to provide more detail on the pipeline or sign whatever agreement you need.

Thank you, [your name] monsterrobot.party · [contact email]

If MPI replies with terms, record the outcome here and flip Decision 1 from Path B to Path A (nothing in the pipeline changes — same engine, the licence just retires the NC risk).

Decision 2 — clear m3ultra disk (RESOLVED pending reboot, 2026-07-17)

Was 98% full (20 GB free). Deleted unsloth/GLM-4.6-GGUF (147 GB, re-downloadable, 0 code refs) from the HF cache with John's OK. But df still shows 20 GB — the freed blocks are pinned by macOS OS-update snapshots: a macOS Tahoe 26.5.2 update is staged (recommended / security, "Action: restart") and the box has 18 days uptime. Space realizes on next reboot, which also applies the pending update. No ~/.jobs heartbeat job is running (load is just the Claude desktop app), so a reboot kills nothing tracked.

John: reboot m3ultra when convenient → applies 26.5.2 + reclaims 147 GB (→ ~167 GB free, ample for Lane B). Not doing this myself — it's your workstation. Kept the FLUX variants (you deselected them); another ~200 GB is prunable there later if wanted.

Decision 3 — test footage (blocker for the real quality call)

capture/inbox/ is empty. Whichever human engine Decision 1 unlocks, the honest walk/dance/pick-up-object quality verdict — and all of B2/B3 + the acceptance check — needs your clips. (HSMR has an HF Space + demo images for the MPS/trajectory smoke-test before your footage.) Film the PLAN's three per docs/CAPTURE.md (T-pose bookends, feet in frame), drop them in the inbox, then python3 ingest.py.

John: film + ingest walk / dance / pick-up-object when convenient.

Blast radius of the Decision-1 reversal (next session must know)

  • Lane B1 is NOT done — wrong engine selected. Re-opened; PROGRESS un-ticked.
  • VOID the old note "MoCapAnything is BVH-direct, skip the retarget rig." Any human model emits SMPL or SKEL, not mixamorigLane C's constraint-retarget IS required again, and spec/{smpl,skel}_to_mixamorig.json is back on the menu.
  • Preconditions: disk resolves on the m3ultra reboot (Decision 2); the MPS/global-trajectory smoke-test still stands for whichever engine John's pick unlocks.

Once Decision 1 is picked and 23 clear, the next session installs the chosen human engine, proves MPS + global trajectory, and proceeds to B2 (service-ize) / B3 (jitter).