text-to-speech

Generate speech audio from text using HeyGen's Starfish TTS API.

Updated Sep 1, 2026
One-click install
npx skills add https://github.com/zamansepeti43/c-rak-agent --skill text-to-speech-zamansepeti43
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: text-to-speech
Source: https://github.com/zamansepeti43/c-rak-agent/tree/main/video-engine/.agents/skills/text-to-speech
Command: npx skills add https://github.com/zamansepeti43/c-rak-agent --skill text-to-speech-zamansepeti43

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Converting written text into natural-sounding speech audio requires choosing the right voice, tuning speed and pitch, and handling API authentication correctly. This Skill provides a complete workflow for generating standalone speech audio with HeyGen's Starfish TTS model, including voice discovery, locale handling, and pause control. ## Core Features & Use Cases - Voice Discovery: List all Starfish-compatible TTS voices filtered by language, gender, and feature support via GET /v1/audio/voices. - Speech Generation: Convert text to audio with control over speed (0.5-1.5), pitch (-50 to 50), locale for multilingual voices, and ElevenLabs advanced settings. - Word Timestamps: Receive per-word timing data in the response for caption syncing and timed text overlays. - Use Case: A content creator needs narration for a product demo video. They list available English voices, preview a few, then generate the audio with SSML break tags for dramatic pauses and use the word timestamps to sync on-screen captions. ## Quick Start Ask the AI to list available HeyGen TTS voices and generate speech audio from your text using a selected voice with your preferred speed.

Frequently Asked Questions about text-to-speech

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert text to speech with the HeyGen API?

Send a POST request to https://api.heygen.com/v1/audio/text_to_speech with your text and a voice_id in the JSON body, authenticated via the X-Api-Key header. The response returns an audio_url, duration, and word timestamps.

How do I list available HeyGen TTS voices?

Call GET https://api.heygen.com/v1/audio/voices with your X-Api-Key header. It returns voices with language, gender, preview URLs, and support flags for pauses and locales. Note this differs from the /v2/voices video API.

Can I use any HeyGen video voice for text-to-speech?

No. Not all voices from GET /v2/voices support the Starfish TTS model. You must use GET /v1/audio/voices to find voices compatible with standalone speech generation.

How do I add pauses to HeyGen text-to-speech audio?

Insert SSML-style break tags directly in your text, such as "word <break time=\"1s\"/> word". Use seconds with an s suffix, keep spaces around the tag, and verify the voice's support_pause flag is true.

What speed and pitch ranges does HeyGen TTS support?

Speed accepts values from 0.5 to 1.5 with a default of 1, and pitch accepts integers from -50 to 50 with a default of 0. Keeping speed between 0.8 and 1.2 produces the most natural-sounding output.

Why is my locale setting ignored in HeyGen TTS?

Locale selection only works on multilingual voices. Check the support_locale field in the voice list response before setting a locale like en-US or pt-BR; non-multilingual voices ignore the parameter.