Skip to main content
The RunAnywhere SDK supports multiple voice sources: neural ONNX voices (Piper) and system voices via AVSpeechSynthesizer.

Available Voice Types

Neural Voices (ONNX/Piper)

High-quality neural voices that run on-device:

System Voices

Built-in iOS/macOS voices via AVSpeechSynthesizer:

Loading Voices

Load a Neural Voice

List Available Voices

Check Current Voice

Unload Voice

Voice Selection

By Language

Voice Picker UI

Voice Comparison

Neural vs System Voices

Quality Tiers

Custom Voice Configuration

Per-Voice Settings

Downloading Voices

Neural voices need to be downloaded before first use:

Multi-Voice Support

Switch between voices for different speakers:

Best Practices

Download and load voices at app startup or in onboarding to avoid delays.
Save user’s preferred voice to UserDefaults and restore on app launch.
Always have a fallback to system voices if neural voices fail to load.

synthesize()

Basic synthesis →

Streaming TTS

Stream long text →