Skip to content

SpeechVoiceInfo

A voice a registered provider offers right now. Pass the entry as voice to speak with it. id is opaque and meaningful only on providerId on this device: read it, store it, but never write one by hand.

optional gender?: VoiceGender


optional id?: string

Absent when the provider cannot address single voices.


kind: "platform" | "model"

"model" when the provider names the model that speaks, so the voice belongs to that model; "platform" when it names none (a system voice, or any provider without a model id).


locale: string

The voice’s primary BCP 47 tag.


optional locales?: string[]

Every BCP 47 tag the voice speaks. Absent when it speaks only locale.


optional model?: string

The model that speaks this voice. Present exactly when kind is "model".


optional name?: string

Label for showing the voice to a person. Not unique, so never compare it.


optional networkRequired?: boolean

true when the voice sends text off the device. Absent inherits the provider’s posture.


providerId: string


optional readiness?: ProviderReadiness

"not_prepared" and "preparing" mean “not yet”. Absent means ready. See prepare().