Writes a key at the playhead on the take. Undo with Ctrl+Z.
Waveform & phoneme alignment
The audio (or a synthetic envelope) with the aligned phoneme & viseme strip — the read side of the pipeline. Run QA flags cue-timing outliers & out-of-vocabulary words.
Animation curves
Coarticulated viseme & gesture curves over the phoneme & word strip. Click a curve to select it · drag its dots to move a key · double-click to add · alt/right-click a dot to delete · drag on empty space to box-select keys, then drag them together or press Delete · Ctrl+Z to undo.
Events
A typed event layer auto-authored from the speech itself (derive_events): emphasis beats on stressed syllables and phrase markers at pauses — the same accents the gesture layer reads. Click an event to seek. Events ride in the track JSON and export as engine notifies (Unity/Unreal).
Face Graph
Click a rig-output node (right column) to edit it in the Inspector → tune each viseme's weight, add/remove one, clone it, or (on a clone) set a constant Value or a nonlinear Response. Press play — each node fills like a level meter (its live value) and the links pulse as the signal flows. Pick a target rig preset above.
Mapping
The phoneme → viseme weight table — the mapping the solver applies before coarticulation (the built-in Oculus-15 table). Edit a weight, rename a target, or add/remove one. Turn on apply on Generate and your edits drive the next take (curves & preview change). Download a canonical openfacefx.mapping JSON to reuse from the CLI/API (--mapping). This is a different layer from the Face Graph (viseme → rig targets).
Export
Every OpenFaceFX exporter, run in-browser. Retarget presets apply where relevant.