coqui tts 返回静音主因是模型不支持中文或文本预处理错误;piper 中文卡住多因模型路径未配置;树莓派上优先选piper因其轻量、低延迟、中文模型成熟。

Coqui TTS synthesizer.tts 返回空音频或静音?
根本原因通常是模型输入文本未被正确预处理,或模型不支持当前语言/标点。Coqui TTS 的 TTS 类默认用 en-us-kathleen-low 这类英文模型,直接喂中文会静音——它根本没学过中文字音映射。
实操建议:
立即学习“Python免费学习笔记(深入)”;
- 确认模型是否支持目标语言:
tts --list_models查看带zh或multilingual标签的模型,例如coqui/tts_zh-CN-huayan-1.0 - 避免用原始中文标点触发分词失败:把
!?。;换成英文标点或加空格,如"你好 !"→"你好!" - 检查
synthesizer.tts调用时是否漏传speaker_wav(零样本克隆场景)或language(多语模型必须显式指定) - 静音还可能是采样率不匹配:模型输出是
22050,但用44100播放器硬播,听起来像无声——用soundfile.write(..., samplerate=22050)保存再试
Piper piper 命令行合成中文卡住或报 OSError: [errno 2] No such file or Directory
这是 Piper 在找语音模型时路径出错。它默认只查 ~/.local/share/piper 和 /usr/local/share/piper,但你下载的 zh_CN-huayan-medium.onnx 可能放在了桌面或 Downloads 里,Piper 根本看不见。
实操建议:
立即学习“Python免费学习笔记(深入)”;
- 别靠
pip install piper后直接跑命令:先手动下载模型到标准位置,比如mkdir -p ~/.local/share/piper && cd ~/.local/share/piper && wget https://github.com/rhasspy/piper/releases/download/2024.02.26/zh_CN-huayan-medium.onnx - 运行时必须加
--model显式指定路径:piper --model ~/.local/share/piper/zh_CN-huayan-medium.onnx -f out.wav - 中文需额外加
--language zh,否则 Piper 默认当英文处理,声调全丢 - 如果仍卡住,加
--debug看日志——大概率是 ONNX Runtime 初始化失败,换系统级安装的onnxruntime-gpu(有 CUDA)或onnxruntime(CPU 版)再试
Coqui vs Piper:选哪个跑在树莓派 4 上?
树莓派 4(4GB)跑 Coqui TTS 的 tts 命令会明显卡顿甚至 OOM,因为它的默认模型(如 tts_models/en/ljspeech/tacotron2-DDC)加载后占内存超 1.2GB,且依赖 pytorch 动态图,ARM 上优化差。
Piper 更合适,原因很实在:
- Piper 模型是纯 ONNX,无 python 运行时依赖,
onnxruntimeARM64 wheel 官方支持好,内存常驻仅 300–500MB - 合成延迟低:Piper 单句平均 800ms(含加载),Coqui 同配置下常超 3s,且首次加载后也不稳定
- 中文可用模型更成熟:Piper 的
zh_CN-huayan是专为中文训练的,Coqui 目前没有维护活跃的高质量中文 Tacotron2 或 VITS 模型 - 但注意:Piper 不支持运行时切换 speaker voice,所有音色差异都得靠换模型文件——别指望用一个模型 +
speaker_wav克隆自己声音
合成音频有杂音、断字或语速突变?
不是模型坏了,大概率是文本预处理和语音对齐之间的缝隙没填平。特别是中英文混排、数字、单位符号这类边界,两个框架都容易崩。
实操建议:
立即学习“Python免费学习笔记(深入)”;
- 数字统一转汉字:把
"第123章"改成"第一百二十三章",Piper 和 Coqui 都不擅长读阿拉伯数字 - 英文缩写加空格或括号:如
"CPU使用率"→"C P U 使用率"或"(CPU) 使用率",避免连读成“扣皮” - Coqui 中若用
vits模型,关掉text_cleaner(设为None)反而更稳——它的默认 cleaner 会把中文标点全删,导致停顿丢失 - Piper 的
--Length-scale控制语速,值越小越快,但低于0.8容易吞字;高于1.3会拉长辅音,听感像卡顿
事情说清了就结束。真正麻烦的是中英文混排+数字+标点的组合,没有银弹,只能一句句试听、微调、存档规则。