Documentation Index
Fetch the complete documentation index at: https://docs.getpatter.com/llms.txt
Use this file to discover all available pages before exploring further.
Krisp VIVA Filter
KrispVivaFilter is a Patter AudioFilter backed by the Krisp VIVA noise- and echo-suppression SDK. It runs as a pre-STT filter in pipeline mode: caller PCM enters the filter, cleaned PCM exits and is forwarded to the STT provider.
Use it on noisy lines (call-centre, vehicle, café) where STT accuracy degrades because of background sound.
Install
The Krisp SDK ships outside PyPI’s normal channels and requires a licence file:At time of writing the Patter TypeScript SDK does not include a Krisp filter — only Python. The TS pipeline can still use
DeepFilterNetFilter for noise suppression.Constructor
RuntimeErrorifkrisp-audiois not installed or the licence key is missing.ValueErrorifmodel_pathis missing orframe_duration_msis unsupported.FileNotFoundErrorif the.kefmodel file does not exist.
Usage in a pipeline agent
Plug it intophone.agent(audio_filter=...):
audio_filter parameter on Agents (pipeline mode only).
Toggling at runtime
KrispVivaFilter exposes enable() / disable() so you can A/B-test the filter on a single call (e.g. when an operator presses a “raw audio” key):
When to use Krisp vs alternatives
| Use Krisp when… | Use DeepFilterNet when… | Skip filtering when… |
|---|---|---|
| You need best-in-class commercial-grade noise/echo suppression and you have a Krisp licence. | You want an MIT-licensed OSS alternative with no licence step. | The line is clean (typical broadband VoIP / mobile in quiet conditions) — the latency and CPU win is not worth it. |
Notes
- The Krisp SDK is reference-counted via
KrispSDKManager: multiple filter instances share one global init/destroy lifecycle, so you can hold oneKrispVivaFilterper call without re-initialising the SDK each time. - The filter expects the exact frame size:
sample_rate * frame_duration_ms / 1000int16 samples perprocess()call. Patter’s pipeline-mode audio bus already aligns to this. - On any internal error the filter logs the failure and returns the original PCM unchanged so the call audio path is never broken — the VAD downstream will still receive audio even if Krisp temporarily fails.
What’s Next
Agents
The
audio_filter parameter on phone.agent(...).DeepFilterNet
OSS noise suppression alternative.
Silero VAD
Voice activity detection downstream of the filter.
Pipeline mode
STT + LLM + TTS composition.

