4E Virtual Design · MediaPipe Holistic · Complete Channel Reference

MediaPipe Channel Guide

Every channel the 4E Data Flow System produces from MediaPipe Holistic detection. 33 body landmarks, 478 face landmarks, 42 hand landmarks, 52 face blendshapes, plus derived joints, raises, velocity, and time sources. Click any channel name to copy it to your clipboard.

Screen space visualiser

MediaPipe detects landmarks in normalised image coordinates: X = 0 (left) to 1 (right), Y = 0 (top) to 1 (bottom). This visualiser shows the approximate default position of each body landmark. Click any dot to see its channels. The 4E system converts these to Unity space (Y-up, origin centre) via the MediaPipeBridge coordinate conversion.

0,0
1,0
0,1
1,1
X →
Y ↓

Click any landmark dot to highlight its channels in the table below. = centre, = left side, = right side.

Channel reference

Channel key Category Description Range Copy

Coordinate systems

MediaPipe raw coordinates (what the camera sees):
X: 0 = left edge of image, 1 = right edge
Y: 0 = top edge of image, 1 = bottom edge
Z: depth relative to camera (negative = towards camera)
Origin: top-left corner of the image

4E Unity space (what channels report after MediaPipeBridge conversion):
X: -1 = left, 0 = centre, +1 = right (may be mirrored depending on bodyInvertX)
Y: -1 = bottom, 0 = centre, +1 = top (Y-up, inverted from image space)
Z: depth (multiplied by 2, negative = towards camera)

Normalised channels (bendNorm, raiseNorm): 0 to 1. Derived from the raw angle (0-180°) divided by 180. Use these when you want a simple 0-1 signal without worrying about degrees.

Tips for developers

Best channels for common gestures:
  • Arm raise: pose/joint/rightUpperArm/raiseNorm — 0 (down) to 1 (straight up)
  • Elbow bend: pose/joint/rightElbow/bendNorm — 0 (folded) to 1 (straight)
  • Head tilt: pose/joint/headTilt/bendNorm — angle between ears via nose
  • Mouth open: face/blendshape/jawOpen — 0 (closed) to ~0.8 (wide)
  • Smile: face/blendshape/mouthSmileLeft — 0 to ~0.6
  • Blink: face/blendshape/eyeBlinkLeft — 0 (open) to 1 (closed)
  • Hand detected: hand/left/detected — 0 or 1
  • Body movement: pose/body/velocity — 0 (still) to ~0.1 (moving, seated)
Cross-device considerations:
  • Channel names and indices are consistent across devices — they come from MediaPipe's model, not the camera
  • Values will differ between cameras (resolution, angle, lighting affect detection confidence)
  • Always calibrate inputMin/inputMax per-device using the DataBus Capture tool
  • Face blendshapes are the most camera-consistent channels (normalised 0-1 from the model)
  • Hand landmarks vary the most (small, often partially occluded)
  • Export channel names from here as a JSON array for use in any framework