Skip to main content

tts-generator

Generate speech audio from text using Gemini 3.1 Flash TTS (with emotion control) or Edge TTS fallback. Use when the user says "/tts", "语音合成", "文字转语音", "念出来", "读出来", "生成语音", "帮我念", "说出来", or when asked to convert text to speech audio.

설치로 이동

소스 정보

저장소
yangwhale/CloseCrab
최근 소스 활동
2026년 6월 9일 00:32
감지된 SKILL.md 언어
다국어 혼합
스타
3
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
tts-generator
description
Generate speech audio from text using Gemini 3.1 Flash TTS (with emotion control) or Edge TTS fallback. Use when the user says "/tts", "语音合成", "文字转语音", "念出来", "读出来", "生成语音", "帮我念", "说出来", or when asked to convert text to speech audio.
# TTS Generator (Gemini 3.1 Flash TTS) Generate expressive speech audio using Google Gemini 3.1 Flash TTS with emotion/audio tag support. Falls back to Edge TTS if Gemini is unavailable. ## Usage ```bash # Generate OGG audio (Gemini, default) OGG=$(~/.claude/skills/tts-generator/scripts/tts-generate.py "[casually] 你好世界") # Choose voice OGG=$(~/.claude/skills/tts-generator/scripts/tts-generate.py "[excitedly] 太棒了!" --voice sulafat) # Fallback to Edge TTS OGG=$(~/.claude/skills/tts-generator/scripts/tts-generate.py "你好" --engine edge --voice xiaoxiao) # Send as Discord voice message ~/.claude/scripts/send-to-discord.sh --voice "$OGG" # Clean up rm -f "$OGG" ``` ## Gemini Voices (15 voices) | 代号 | 风格 | 代号 | 风格 | |------|------|------|------| | `aoede` (default) | 轻松 | `achird` | 友好 | | `sulafat` | 温暖 | `kore` | 坚定 | | `puck` | 欢快 | `charon` | 知性 | | `fenrir` | 兴奋 | `leda` | 青春 | | `zephyr` | 明亮 | `achernar` | 柔和 | | `gacrux` | 成熟 | `sadachbia` | 活泼 | | `algieba` | 顺滑 | `vindemiatrix` | 温柔 | | `orus` | 坚定 | | | ## Emotion Tags (Gemini only) Gemini TTS 支持 inline audio tags 控制情感和风格。**有两种工作模式**,行为不同: ### 模式 A:单标签(director instruction) 只有一个开头标签时,脚本把它翻译成 director 指令喂给 Gemini:`"[casually] 你好"` → `"Say the following in Chinese, casually:\n你好"`。**这种模式下任意词都能用**(因为 Gemini 把它当自然语言指令理解),所以下面这些"自创"标签都能工作: ```bash "[casually] 今天的进度还不错" # 随意 "[excitedly] 实验通过了!" # 兴奋 "[thoughtfully] 这个方案有两个权衡点" # 思考 "[seriously] 注意这个安全隐患" # 严肃 "[cheerfully] 早上好!" # 愉快 "[calmly] 总结一下今天的工作" # 平静 ``` ### 模式 B:多个 inline 标签(raw passthrough) 文本里有 ≥2 个标签时,脚本不动它,原样 pass 给 Gemini。Gemini **只认它训练时见过的官方词**,自创词会被静默丢弃。一段话里想多次切换情绪(推荐用法,更生动)必须用下面的官方词: **思考类**:`[thinking] [contemplative] [analysis] [focus] [reflection] [planning] [speculation] [pensive] [curiosity]` **积极类**:`[excitement] [enthusiasm] [joy] [happy] [pleased] [optimism] [playful] [amusement] [friendly] [triumph] [satisfaction]` **中性类**:`[neutral] [contentment] [serenity] [relaxation] [certainty]` **严肃类**:`[seriousness] [urgency] [warning] [concern] [caution] [emphasis]` **惊讶类**:`[surprise] [amazement] [realization] [confusion] [uncertainty] [doubt] [disbelief]` **消极类**:`[disappointment] [frustration] [regret] [exhaustion] [weariness]` **幽默类**:`[humor] [sarcasm] [amused] [self-deprecation]` **自信类**:`[confidence] [determination] [assertive] [pride]` **特效类**:`[whispers] [laughs] [sighs] [slow] [fast]` **说明类**:`[informative] [explaining] [summary] [instruction] [suggestion]` **多标签例子(好)**: ``` [curiosity] 我先看下日志。[realization] 哦原来是端口冲突。 [amused] 这种小坑最烦了。[suggestion] 你 kill 8080 那个就行。 ``` **多标签例子(差)**: ``` [casually] 我看了日志发现端口冲突 你 kill 8080 就行 # 整段一个标签,且 [casually] 不是官方词,多标签场景下还会被丢 ``` ## Edge TTS Voices (fallback) - `xiaoxiao` — 女声(默认) - `xiaoyi` — 女声,温柔 - `yunxi` — 男声,活力 - `yunjian` — 男声,成熟 - `yunyang` — 男声,新闻播报 - `yunxia` — 男声,少年 ## Notes - Output: OGG Opus (1ch, 48kHz, 48kbps) - Gemini TTS needs `GOOGLE_API_KEY` env var or GCP Application Default Credentials - Gemini supports 80+ languages with auto-detection - If Gemini fails, automatically falls back to Edge TTS
GitHub에서 보기