Skip to main content
This guide explains how to customize word pronunciation in your video voice-overs using SSML (Speech Synthesis Markup Language) phoneme tags. Phoneme tags give you precise control over how AI voices pronounce brand names, technical terms, foreign words, or any text that might be mispronounced.

What You’ll Learn

Phoneme Basics

Understand SSML phoneme tag syntax and usage

Provider Differences

Learn how ElevenLabs, AWS Polly, and Google handle pronunciation

CMU Arpabet

Use the CMU Arpabet phonetic alphabet for pronunciation

Practical Examples

Apply pronunciation control to real video content

Before You Begin

Make sure you have:

Understanding Voice-Over Types

Pictory supports three voice-over services, each with different SSML phoneme support:
You can identify the voice-over service by the service field in the Get Voiceover Tracks API response. Values are elevenlabs, aws, or google.

Enabling SSML in Your Story

To use SSML tags including phoneme tags, you must set isSSMLStory: true in your scene configuration:
The isSSMLStory property is required when using any SSML tags. Without it, SSML tags will be read as plain text instead of being processed.

ElevenLabs (Premium Voices)

ElevenLabs premium voices provide high-quality, natural-sounding speech with phoneme support for English language content.

Key Requirements

  1. Model Configuration: When using phoneme tags with ElevenLabs, you must specify a modelId in premiumVoiceSettings. If not provided, eleven_flash_v2 is used by default for phoneme processing.
  2. Limited Model Support: Only three ElevenLabs models support phoneme tags. Other models will ignore phoneme markup.
  3. English Only: Phoneme pronunciation control works only with English language content in ElevenLabs.
  4. CMU Arpabet: ElevenLabs uses the CMU Arpabet phonetic alphabet.

Models with Phoneme Support

Only the following three models support SSML phoneme tags in ElevenLabs. Using phoneme tags with other models will not produce the expected pronunciation changes.

Models Without Phoneme Support

The following models do not support phoneme tags:

Complete Example

ElevenLabs External Documentation

For detailed information about ElevenLabs pronunciation features:

AWS Polly (Standard Voices)

AWS Polly voices provide reliable SSML support with multiple phonetic alphabets for precise pronunciation control.

Key Features

  1. Multiple Alphabets: AWS Polly supports IPA (International Phonetic Alphabet) and X-SAMPA phonetic systems.
  2. SSML Categories: AWS Polly voices have different SSML support levels (Category A or B). Check the ssmlSupportCategory field from the tracks API.
  3. Neural and Standard Engines: Different voices use different engines with varying SSML capabilities.

Phoneme Tag Syntax

Or using X-SAMPA:

Complete Example

AWS Polly External Documentation

For detailed information about AWS Polly phoneme tags:

Google Text-to-Speech (Standard Voices)

Google TTS voices offer high-quality neural speech synthesis with comprehensive IPA phoneme support.

Key Features

  1. IPA Support: Google TTS uses the International Phonetic Alphabet (IPA) for phoneme specification.
  2. WaveNet and Neural2 Voices: Google offers advanced neural voice engines with natural-sounding output.
  3. Multi-language: Phoneme support across multiple languages with language-specific IPA symbols.

Phoneme Tag Syntax

Complete Example

Google TTS External Documentation

For detailed information about Google TTS phoneme support:

CMU Arpabet Reference

The CMU Arpabet is a phonetic alphabet commonly used with ElevenLabs. Here’s a quick reference:

Vowels

Stress Markers

Example Breakdown

For “Pictory” pronounced as P IH1 K T AO0 R IY0:

Common Pronunciation Examples

Here are phoneme representations for words commonly mispronounced:

Best Practices

Always test your phoneme tags with a short video before creating longer content. Different voices may interpret phonemes slightly differently.
Stick to one phonetic alphabet per voice provider:
  • ElevenLabs: CMU Arpabet
  • AWS Polly: IPA or X-SAMPA
  • Google TTS: IPA
Only use phoneme tags for words that are genuinely mispronounced. Overusing them can make content harder to maintain.
Keep a reference document of phoneme tags used for your brand names and technical terms for consistency across videos.

Troubleshooting

Problem: The phoneme tags appear as literal text in the voice-over.Solution: Ensure isSSMLStory: true is set in your scene configuration. This flag enables SSML processing.
Problem: The word is still mispronounced even with phoneme tags.Solution:
  • Verify you are using CMU Arpabet (not IPA) with ElevenLabs
  • Check that premiumVoiceSettings.modelId is specified
  • Ensure stress markers (0, 1, 2) are correctly placed
Problem: Some voices do not process SSML tags correctly.Solution: Check the ssmlSupportCategory field from the Get Voiceover Tracks API. Some voices have limited SSML support.
Problem: Request fails when using special characters in phoneme strings.Solution: Ensure proper escaping of special characters. In JSON, use \" for quotes within the phoneme attribute.

Next Steps

AI Voice-Over Guide

Learn the basics of adding voice-over to videos

Multi-Level Voice-Over

Use different voices for different scenes

Get Voiceover Tracks

Discover all available AI voices

Render Storyboard Video

Complete API reference for video rendering

External Resources

ElevenLabs Docs

ElevenLabs pronunciation guide

AWS Polly Docs

AWS Polly phoneme reference

Google TTS Docs

Google TTS phoneme guide