Expression Tags
Add emotional depth to your audio with expression tags.
Model Support
Expression tags are only supported by Aura models (aura-lite, aura-prime, aura-max). Rapid models do not support expressions.
Available Expressions
| Tag | Description | Usage |
|---|---|---|
<chuckle> |
Light, brief laughter | Self-contained |
<laugh> |
Full laughter | Self-contained |
<sigh> |
Sighing sound | Self-contained |
<gasp> |
Surprised gasp | Self-contained |
<yawn> |
Yawning sound | Self-contained |
<cough> |
Coughing sound | Self-contained |
<whisper>...</whisper> |
Whispered speech | Wraps text |
<emphasis>...</emphasis> |
Emphasized speech | Wraps text |
Usage Examples
Self-Contained Expressions
These tags produce a sound effect at that position:
import requests
# Laughter
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": "That's hilarious! <laugh> I can't believe it!",
"voice": "Peter",
"language": "en-US",
"model": "aura-prime"
}
)
# Chuckle
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": "Well, that's funny <chuckle> but let's continue.",
"voice": "Emma",
"language": "en-US",
"model": "aura-prime"
}
)
# Sigh
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": "<sigh> It's been a really long day.",
"voice": "Peter",
"language": "en-US",
"model": "aura-prime"
}
)
# Gasp
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": "<gasp> I didn't expect that at all!",
"voice": "Emma",
"language": "en-US",
"model": "aura-prime"
}
)
Wrapping Expressions
These tags modify how the enclosed text is spoken:
# Whisper
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": "I have a secret. <whisper>Don't tell anyone.</whisper>",
"voice": "Peter",
"language": "en-US",
"model": "aura-prime"
}
)
# Emphasis
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": "This is <emphasis>very important</emphasis> information.",
"voice": "Peter",
"language": "en-US",
"model": "aura-prime"
}
)
Combining Expressions
# Multiple expressions in one text
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": """
<sigh> I'm so tired today.
But wait <gasp> what's that?
<whisper>I think someone is coming.</whisper>
<laugh> Just kidding! It was nothing.
""",
"voice": "Peter",
"language": "en-US",
"model": "aura-max"
}
)
Audiobook Example
Creating expressive narration for storytelling:
story_text = """
The detective looked at the evidence. <sigh> "It doesn't make sense," he muttered.
Suddenly, the door burst open! <gasp>
"I know who did it!" shouted Maria, breathless from running.
The detective <chuckle> leaned back in his chair.
<whisper>This was going to be interesting.</whisper>
"""
response = requests.post(
"https://yourvoic.com/api/v1/tts/generate",
headers={"X-API-Key": "your_api_key"},
json={
"text": story_text,
"voice": "Peter",
"language": "en-US",
"model": "aura-max" # Best quality for audiobooks
}
)
Best Practices
- Use sparingly - Too many expressions can sound unnatural
- Match the context - Use expressions that fit the emotional tone
- Test with your content - Preview how expressions sound with your specific text
- Use Aura Max - For best expression quality, use aura-max model
Tip
Expression tags work best with natural conversational text. They add authenticity to audiobooks, character dialogues, and voice assistants.