> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# Play Audio or TTS

> Call Flow Builder node to play audio or TTS to the caller.

This node allows you to play an audio file, play silence, play a ringtone, or play text-to-speech.

## **Node Settings**

**`Text to Speech`** `object`

Text to Speech node options. See [Text to Speech Settings](#text-to-speech-settings).

---

**`Play Audio File`** `object`

Play Audio file node options. See [Play Audio File Settings](#play-audio-file-settings).

---

### Text to Speech Settings

Node options for Text to Speech.

**`Language`** `string`

The language to use for the text-to-speech.

---

**`Gender`** `string`

The gender of the voice to use for the text-to-speech.

---

**`Voice`** `string`

The voice to use for the text-to-speech. \
\
Please note that any voices that show (premium) next to the name will be billed at the [Premium TTS rate](https://signalwire.com/pricing/voice).

---

**`Text`** `string`

The text to convert to speech. [SSML](https://cloud.google.com/text-to-speech/docs/ssml) can be used to customize the speech. The text can also include [variables](/docs/call-flow-builder/reference/set-variables) to be replaced with the variable value.\
\
**SSML Example:** `<speak>Here is a <say-as interpret-as="characters">SSML</say-as> example</speak>`\
\
**Variables Example:** `Hello, you got a call from %{call.from}`

---

### Play Audio File Settings

Node options for Play Audio File.

**`Audio File`** `string`

A URL of a audio file to play.\
Additionally a ringtone or silence can be played over the call.\
\
**Ringtone Format:** `silence:<time in seconds>` (ex: `silence:5`)\
**Silence Format:** `ring:<time in seconds><ringtone code>` (ex: `ring:5:jp`)

---

## Example

Configure **Play Audio or TTS** for **Text to Speech**, language **English (US)**, gender **male**, voice `en-US-Standard-A`, and text `Hello, you're calling from %{call.from}`.