Skip to main content

Module boundaries

Module boundaries 

Source
Expand description

Progressive word-boundary firing, shared by the cloud and sherpa-onnx engines.

Engines without real API timing data get 150-wpm estimates. Firing them in one batch after synthesis leaves callers that interleave marks with playback (e.g. the VoiceGarden-SPD speech-dispatcher module) unable to highlight in sync on long utterances. EstimateFirer anchors the estimates onto the delivered-audio clock instead: estimate i fires once ≥ its start-time worth of PCM has actually been emitted.

Structs§

EstimateEvent
One estimated boundary event with source-text position resolved.
EstimateFirer
Fires EstimatePlan events as cumulative delivered audio crosses each estimate’s start time (scaled by time_scale to account for the engine’s actual speech rate). Owns the plan so it can be moved into ’static callbacks.
EstimatePlan
Pre-resolved estimated boundaries for an utterance, in firing order.