STTMuteFilter
Processor for controlling STT muting and interruption handling during bot speech
Overview
STTMuteFilter
is a general-purpose processor that combines STT muting and interruption control. When active, it prevents both transcription and interruptions during bot speech, providing a cleaner conversation flow by ensuring the bot’s speech isn’t interrupted or transcribed.
The processor supports multiple strategies for when to mute the STT service, making it flexible for different use cases.
Constructor Parameters
The STT service to control
Configuration object that defines the muting strategy and optional custom logic
Configuration
The processor is configured using STTMuteConfig
, which determines when and how the STT service should be muted:
The muting strategy to use
Optional callback for custom muting logic (required when strategy is CUSTOM
)
Muting Strategies
STTMuteConfig
accepts one of these STTMuteStrategy
values:
Mute only during the bot’s first speech (typically during introduction)
Mute during all bot speech
Use custom logic provided via callback to determine when to mute
Configuration Examples
Input Frames
Indicates bot has started speaking
Indicates bot has stopped speaking
User interruption start event (suppressed when muted)
User interruption stop event (suppressed when muted)
Indicates user has started speaking (suppressed when muted)
Indicates user has stopped speaking (suppressed when muted)
Output Frames
Control frame to mute/unmute the STT service
All input frames are passed through except VAD-related frames (interruptions and user speaking events) when muted.
Usage Examples
Basic Usage (Mute During First Speech)
Always Mute During Bot Speech
Custom Muting Logic
Frame Flow
Notes
- Combines STT muting and interruption control into a single concept
- Muting prevents both transcription and interruptions
- Strategies can be changed at initialization
- Custom strategy allows for complex muting logic
- Placed before STT service in pipeline
- Maintains conversation flow during bot speech
- Efficient state tracking for minimal overhead