Skip to main content
Source Code: src/gaia/audio/
Components: AudioClient, WhisperAsr, KokoroTTS Module: gaia.audio Import:

Overview

The audio subsystem provides complete voice interaction capabilities including Automatic Speech Recognition (ASR), Text-to-Speech (TTS), and voice chat orchestration. AudioClient coordinates ASR and TTS with LLM generation, while WhisperAsr handles voice-to-text transcription and KokoroTTS provides high-quality speech synthesis. Key Features:
  • Voice chat with streaming TTS
  • Whisper-based ASR with Voice Activity Detection (VAD)
  • High-quality Kokoro TTS with multiple voices (17+ available)
  • Streaming audio processing with real-time playback
  • Interrupt handling (keyboard and voice)
  • GPU acceleration support
  • Thread-safe operation

Requirements

AudioClient

  • Voice chat session management
  • ASR/TTS coordination (pause recording during TTS)
  • LLM integration for conversation
  • Interrupt and halt handling
  • Queue-based transcription delivery

WhisperAsr

  • Real-time speech recognition using Whisper
  • Configurable model sizes (tiny, base, small, medium, large)
  • Voice Activity Detection with silence thresholds
  • Pause/resume recording capability
  • GPU acceleration (CUDA support)

KokoroTTS

  • High-quality speech synthesis
  • Multiple voice options (American/British, male/female)
  • Streaming audio generation
  • Real-time playback
  • Interrupt event handling

API Specification

AudioClient

WhisperAsr

KokoroTTS


Dependencies

Required Packages


Usage Examples

Basic Voice Chat

Custom Voice Settings

Standalone Whisper ASR

Standalone Kokoro TTS