Skip to main content

Amazon Polly

Amazon Web Services' Polly TTS engine includes several models to accommodate different use cases.

Models

SignalWire supports the following three Amazon models.

Languages

Consult AWS documentation for a comprehensive and up-to-date list of supported voices, as well as information on accented and fully bilingual voices.

Voice IDs

Amazon voice IDs are composed of four sections:

ParameterPossible valuesDescription
engine
required
  • amazon
  • polly (will be deprecated in the future)
TTS engine
voice
required
Choose from the Name/ID columnVoice ID
model
optional
standard, neural, or generativeAmazon Polly model. Default: standard
language
optional
Choose from the Language code columnSets model language. Default: en-US

Create the voice string according to the following pattern:

amazon.voice:model:language

Examples

# The Danielle voice, which supports the default Standard model and en-US language
amazon.Danielle

# Two equivalent strings for the Standard-model Aditi bilingual voice in the Hindi language
amazon.Aditi:standard:hi-IN
amazon.Aditi:hi-IN

# The Amy Generative model in British English
amazon.Amy:generative:en-GB
note

The polly engine code is being deprecated. Use amazon instead.

Character limits

Amazon Polly has a limit of 3000 chargeable characters in a single request. If your TTS request is longer than 3000 characters, you will experience silence.


Examples

See how to use Amazon Polly voices on the SignalWire platform.

Use the languages SWML method to set one or more voices for an AI agent.

version: 1.0.0
sections:
main:
- ai:
prompt:
text: Have an open-ended conversation about flowers.
languages:
- name: English
code: en-US
voice: amazon.Ruth:neural

Alternatively, use the say_voice parameter of the play SWML method to select a voice for basic TTS.

version: 1.0.0
sections:
main:
- set:
say_voice: "amazon.Ruth:neural"
- play: "say:Greetings. This is the Ruth voice from Amazon Polly's Neural text-to-speech model."