- OPERATORS
- PIPELINES
Voice Activity
v1.0.0newvoice_activity processes microphone audio into speech-state signals for voice workflows. Use it when a patch needs echo cancellation, speech start/end detection, and optional Smart Turn end-of-turn classification before sending audio to STT or an agent loop.
What It Does
Section titled “What It Does”The operator loads a pipeline with Silero VAD, optional LiveKit echo cancellation/audio processing, and optional Smart Turn v3. While Active is on, incoming audio chunks are queued, processed, and converted into CHOP-observable state: speaking, speech start, speech end, turn complete, Smart Turn probability, and latency metrics.
Echo Cancellation uses input 2 as reference speaker/TTS audio. Smart Turn checks whether a pause likely means the user has finished speaking, reducing mid-sentence cutoffs in voice interfaces.
Typical Workflow
Section titled “Typical Workflow”- Wire microphone audio to input 1. If Echo Cancellation is enabled, wire speaker or TTS reference audio to input 2.
- Pulse Install Dependencies once if the required Python packages are missing.
- Pulse Load Pipeline, or leave Auto Load on Init enabled and wait for Pipeline Ready.
- Tune Speech Threshold, Min Silence, and Speech Pad for the microphone and room.
- Enable Smart Turn when semantic end-of-turn detection is useful, then adjust Turn Threshold and Turn Silence.
- Turn Active on and monitor Is Speaking, Smart Turn Probability, and downstream CHOP flags.
Inputs And Outputs
Section titled “Inputs And Outputs”- Input 1: Mono microphone audio CHOP, expected at the processing sample rate.
- Input 2: Optional reference audio CHOP for Echo Cancellation.
- Output 1: Processed audio CHOP after the enabled audio-processing stages.
- Output 2: Status and metrics CHOP.
- Output 3: Speaking and turn-complete flag CHOP.
Works Well With
Section titled “Works Well With”stt: Receives gated/processed microphone audio and speech boundary signals.tts: Supplies reference audio for echo cancellation in speaker playback setups.agent: Uses turn-complete signals to decide when to respond.flow_router: Routes speech start/end and Smart Turn events.
Gotchas
Section titled “Gotchas”- Load Pipeline must succeed before Active does useful work.
- Echo Cancellation needs reference audio on input 2. Without that signal, enabling it cannot remove speaker echo.
- Smart Turn can add a small amount of end-of-turn latency in exchange for fewer premature cutoffs.
- First Smart Turn load may download/cache ONNX and feature-extractor assets.
- The operator replaces older Silero-only VAD workflows; avoid running both on the same microphone path.
Parameters
Section titled “Parameters”Voice Activity
Section titled “Voice Activity”op('voice_activity').par.Pipelinestatus Str - Default:
"" (Empty String)
op('voice_activity').par.Active Toggle - Default:
False
op('voice_activity').par.Autoloadoninit Toggle - Default:
True
op('voice_activity').par.Loadpipeline Pulse - Default:
False
op('voice_activity').par.Unloadpipeline Pulse - Default:
False
op('voice_activity').par.Pipelineready Toggle - Default:
False
op('voice_activity').par.Isspeaking Toggle - Default:
False
op('voice_activity').par.Installdependencies Pulse - Default:
False
op('voice_activity').par.Enableaec Toggle - Default:
True
op('voice_activity').par.Enablenoisesuppression Toggle - Default:
False
op('voice_activity').par.Enableautogaincontrol Toggle - Default:
False
op('voice_activity').par.Enablehighpassfilter Toggle - Default:
False
op('voice_activity').par.Speechthreshold Float - Default:
0.81- Range:
- 0 to 1
op('voice_activity').par.Minsilenceduration Int - Default:
508- Range:
- 0 to 2000
op('voice_activity').par.Speechpadding Int - Default:
242- Range:
- 0 to 500
op('voice_activity').par.Enablesmartturn Toggle - Default:
True
op('voice_activity').par.Smartturnthreshold Float - Default:
0.333- Range:
- 0 to 1
op('voice_activity').par.Smartturnmaxaudio Float - Default:
8.0- Range:
- 1 to 30
op('voice_activity').par.Smartturnprob Float - Default:
0.0- Range:
- 0 to 1
op('voice_activity').par.Smartturnready Toggle - Default:
False
op('voice_activity').par.Smartturnsilence Int - Default:
1000- Range:
- 100 to 3000
Changelog
Section titled “Changelog”v1.0.02026-05-02
- updated manifest category to 0.3.0 group taxonomy
- Initial voice_activity structure