Overview

AICFilter is an audio processor that improves users speech by reducing background noise and improving speech clarity overall. It inherits from BaseAudioFilter and processes audio frames to improve audio quality. To use AIC, you need a license key. Get started at ai-coustics.com.

Installation

The AIC filter requires additional dependencies:
pip install "pipecat-ai[aic]"

Constructor Parameters

license_key
str
default:""
AIC license key
model_type
int
default:"0"
Model
enhancement_level
float
default:"1.0"
Enhancement level
voice_gain
float
default:"1.0"
Voice gain
noise_gate_enable
bool
default:"True"
Enable noise gate

Input Frames

FilterEnableFrame
Frame
Specific control frame to toggle filtering on/off
from pipecat.frames.frames import FilterEnableFrame

# Disable noise reduction
await task.queue_frame(FilterEnableFrame(False))

# Re-enable noise reduction
await task.queue_frame(FilterEnableFrame(True))

Usage Example

from pipecat.audio.filters.aic_filter import AICFilter

transport = DailyTransport(
    room_url,
    token,
    "Respond bot",
    DailyParams(
        audio_in_filter=AICFilter(), # Enable AIC speech improvement
        audio_in_enabled=True,
        audio_out_enabled=True,
        vad_analyzer=SileroVADAnalyzer(),
    ),
)

Audio Flow

Notes

  • Requires ai-coustics license key
  • Supports real-time audio processing
  • Handles PCM_16 audio format
  • Thread-safe for pipeline processing
  • Can be dynamically enabled/disabled
  • Maintains audio quality while improving speech, including noise reduction
  • Efficient processing for low latency