Skip to content

Events and patterns

Field Type Meaning
id string The gesture, e.g. 'head.left'. See the catalog.
phase 'start' | 'end' Began or stopped. Every start is followed by exactly one end.
t number (ms) When it happened, on the sample clock. A start is stamped at the gesture’s onset, not when it was confirmed.
strength number On start: how strongly it crossed the line (1 = exactly at it, or a 0 to 1 score; see each gesture). 0 on end.

In C# the same fields are Id, Phase (GesturePhase.Start / GesturePhase.End), T and Strength.

Pattern Matches
'blink' Exactly that gesture
'head.*' A family: head.left, head.right, head.up, head.down, head.neutral, head.tilt.left, head.tilt.right
'*' Every gesture
  • Within one frame, events arrive in a fixed order: face, eyes, mouth, brows, head, expression.
  • A gesture never starts twice without ending in between.
  • When the profile changes (recalibration, setProfile), every held gesture except face.found / face.lost ends first.
  • head.neutral ends before a head direction starts, and starts after one ends.

Fire on start for tap-like verbs (shoot, jump). Treat start…end as a held state for continuous verbs (steer while the head is turned, glow while smiling). isActive(id) tells you whether a gesture is held right now.