{
 "id": "GEN_J_r04a_sit_seg041_TRAIN",
 "emotion": "neutral",
 "fps": 30,
 "face_frames": 415,
 "body_frames": 414,
 "face": "face.json",
 "body": "body.vrma",
 "audio": "audio.wav",
 "body_source": "generator + codec decoder (continuous)",
 "body_writer": "baked_template_channel_write",
 "bones": 50,
 "run_id": "solo_body_v1__50b_vel__scratch__r04a_hygiene",
 "generator_ckpt": "../motion-blender/experiments/wave-hands/outputs/gen_train/runs/solo_body_v1__50b_vel__scratch__r04a_hygiene/generator/epoch_2000.pth",
 "generator_epoch": 1999,
 "guidance": 2.0,
 "steps": 32,
 "cond_time_zero": true,
 "rng_seed": 20260806,
 "compare_with": "GT_16_restref_sit_seg041",
 "root_translation": "codec velocity integrated from origin",
 "motion_stats": {
  "generated": {
   "speed_deg_per_frame": 0.8944755003973255,
   "speed_p95": 2.9707599664635063,
   "arms_speed": 1.060007260505481,
   "fingers_speed": 0.525835360467912,
   "rest_frac": 0.13317191283292978,
   "jerk_p99": 1.356826250422314,
   "frames": 414,
   "travel_cm": 236.34477293817326,
   "net_travel_cm": 26.06060218811035
  },
  "ground_truth": {
   "speed_deg_per_frame": 0.9313775652364411,
   "speed_p95": 3.659790756951016,
   "arms_speed": 0.9460076699812798,
   "fingers_speed": 0.5491883287641219,
   "rest_frac": 0.2179176755447942,
   "jerk_p99": 1.8571437143972518,
   "frames": 414,
   "travel_cm": 274.33960934933964,
   "net_travel_cm": 35.52815979259645
  }
 },
 "writer_report": {
  "frames": 414,
  "skipped": [
   "upperChest"
  ],
  "root_translation": true,
  "template": "/data/mocap-convertor/datasets/solo_20260722_body_v1/artifacts/templates/kemix.vrma"
 },
 "note": "생성기는 GT를 재현하지 않는다 — 오디오에 맞는 새 모션을 만든다. 프레임별 각도 차이는 의미가 없고 분포(속도·정지비율·이동)를 본다.",
 "timing": {
  "face_s": 0.0,
  "body_s": 2.46,
  "total_s": 5.51
 }
}