Skip to main content

Voices

Navigation SDK UX Framework comes in with a Text-To-Speech engine that's used to synthesize assistant's messages during conversation or active guidance. It is possible to selected one of pre built voices: PrebuiltDashVoices.voice1 or PrebuiltDashVoices.voice2. By default, a remote TTS engine is used to produce the most natural sounding voice, however, this can come at a slight cost of data usage and latency. You can configure UX Framework to use a local Text To Speech engine instead via the preferLocalTts flag.

Dash.init(
applicationContext = applicationContext,
accessToken = getString(R.string.mapbox_access_token)
) {
voices {
selectedVoice = PrebuiltDashVoices.voice1
preferLocalTts = true
}
}

You can also update the preference of local or remote Text To Speech engine at any point in the runtime:

Dash.applyUpdate {
voices {
preferLocalTts = true
}
}

Make sure that the device has downloaded the offline language pack for the language that user selected.

Was this page helpful?