tts-director

Converts scripts into expressive multi-segment TTS payloads for CosyVoice and MiniMax models.

1.6k|214|Updated Jun 4, 2025
One-click install
npx skills add https://github.com/Jamailar/RedBox --skill tts-director
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tts-director
Source: https://github.com/Jamailar/RedBox/tree/main/desktop/builtin-skills/tts-director
Command: npx skills add https://github.com/Jamailar/RedBox --skill tts-director

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Flat, monotone text-to-speech output ruins short-video voiceovers, product explainers, and podcast-style narration. This Skill turns a finished script into a single performance-designed TTS request with the right emotion, speed, pitch, pauses, and per-role voices.

Core Features & Use Cases

  • Model-aware branching: Detects whether the selected model is CosyVoice (SSML with rate/pitch/volume attributes) or MiniMax (emotion/speed/pitch segment controls) and builds the correct payload shape.
  • Multi-segment performance design: Splits scripts into beats or speaker turns, assigning each segment emotion, speed, pitch, pause markers, and a distinct voiceId for dialogue.
  • Single merged output: Submits exactly one voice.speech call with waitForCompletion and returns only the merged finalAudio, never raw segment files.
  • Use Case: A creator pastes a 60-second product seeding script and receives one MP3 where the hook is energetic, the proof section is calm, and the CTA is urgent, with natural pauses between beats.

Quick Start

Use the tts-director skill to turn this short-video script into an expressive voiceover with emotional segments and natural pauses.

Frequently Asked Questions about tts-director

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

FAQPage Schema
How do I generate expressive TTS voiceover for short videos?

Provide the final script and let the skill split it into performance beats, assigning each segment emotion, speed, pitch, and pause markers. It submits one voice.speech request and returns a single merged audio file ready for playback.

What is the difference between CosyVoice and MiniMax TTS controls?

CosyVoice uses SSML with rate, pitch, and volume attributes on the speak tag plus a style prompt, while MiniMax uses structured segments with emotion, speed, and pitch fields. The skill detects the model and builds the correct payload automatically.

Can TTS handle multi-speaker dialogue with different voices?

Yes, the skill identifies the number of roles, selects a distinct voiceId per speaker from available voices, and creates one segment per speaker turn. Boundary pauses between turns are controlled with pauseAfterSeconds values.

When should I use SSML versus emotion-based segments?

SSML applies only to CosyVoice models inside a video-director managed digital-human or VideoRetalk talking-head flow. MiniMax models never use SSML or prompts; they rely on emotion, speed, and pitch fields within ordered segments.

Why does my TTS output sound flat despite multiple segments?

Flat output happens when all segments use identical emotion and speed values with no pauses. The skill's self-check requires each segment to have a justified tone, varied energy across the arc, and intentional punctuation and pause placement.