# Supertonic Express 亲测:没有 API Key,本地把文字变成多语言配音 ## 为什么测它 给视频配音、做播客、读长文,绕不开文字转语音。以前的路子就两条:要么用云端 API,注册、充值、配 Key,还要担心文本内容被第三方看到;要么用本地 TTS,装完发现多半只支持一两种语言,或者音质像机器人。更别说很多人只是临时配一句音,为这个去开通付费服务,总觉得不值。 Supertonic Express 走的是第三条路:模型完全跑在本地,ONNX Runtime 推理,官方说支持 5 种语言,宣称速度远超实时。这类"本地多语言 TTS"的仓库不少,但大多数不是模型太大,就是语言支持名不副实。所以这次不读 README 就下结论,直接 clone 下来跑一遍。 ## 项目基础信息 - 项目:supertonic-express(开源,MIT License) - 仓库:github.com/groxaxo/supertonic-express(很新的仓库,目前 2 星) - 模型:onnx-community/Supertonic-TTS-2-ONNX(Supertonic 2 的 ONNX 版本,约 66M 参数,首次运行自动下载约 263MB) - 实现:Python(ONNX Runtime + FastAPI 服务)和 JavaScript(Transformers.js)两套 - 成本:免费、纯本地运行、零 API Key - 支持语言(官方):英语 en、韩语 ko、西班牙语 es、葡萄牙语 pt、法语 fr ## 安装(JS 路径实测) ```bash git clone https://github.com/groxaxo/supertonic-express.git cd supertonic-express/js npm install ``` 本机环境:macOS 26.5.2 / Apple M1 Pro / Node v26.7.0。装完依赖后写了个十几行的调用脚本:初始化(首次运行会自动从 Hugging Face 下载模型,约 263MB,我这台机器花了 297 秒,包含下载和加载;第二次运行只需要 1 秒)→ 逐条生成 WAV。 ## 实测:三种语言,四条语音 统一用 15 步推理(仓库示例默认参数),每个文本单独计时。输出是 44.1kHz 单声道 WAV,用 ffprobe 核对时长、用 volumedetect 确认不是静音文件(各条 mean -25~-28dB、峰值 -7~-9dB,正常语音响度)。 | 文本 | 语言 | 音色 | 字符数 | 生成耗时 | 输出时长 | RTF* | 文件大小 | |---|---|---|---|---|---|---|---| | Hello! Welcome to Supertonic, on-device text to speech. No cloud, no API key. | en | M1(男) | 77 | 3.27s | 6.97s | 0.47 | 1.23MB | | The startup secured $5.2M in funding, and the meeting starts at 4:45 PM on Wed, Apr 3. | en | M1(男) | 86 | 2.19s | 9.61s | 0.23 | 1.70MB | | 안녕하세요! 슈퍼토닉은 기기에서 바로 실행되는 음성 합성입니다. | ko | F1(女) | 35 | 1.48s | 5.85s | 0.25 | 1.03MB | | ¡Hola! Bienvenido a Supertonic, síntesis de voz en tu propio dispositivo. | es | M1(男) | 73 | 1.58s | 6.20s | 0.26 | 1.09MB | \* RTF = 生成耗时 ÷ 输出时长,越小越快;RTF 0.23 表示生成 1 秒音频只需 0.23 秒。 几条实测结论: - **英语、韩语、西班牙语都跑通了**,男女两种音色(M1/F1)都试了,输出文件均有效。 - **自然文本直接喂**。第二行英文故意塞了 $5.2M、4:45 PM、Wed, Apr 3 这种格式文本,没有做任何预处理,生成成功。官方宣称"数字、日期、货币直接读对",这属于宣称口径,发音是否百分百准确我没法用耳朵验证——本机没有 ASR 环境做回读校验,建议以官方 demo 听感为准。 - **速度:约 2~4 倍实时**(15 步,M1 Pro)。官方 README 给的数据更快:i7-4790 上 9.774x、M4 Pro 用 2 步推理 167x。我没法复现他们的机器,实测环境不一样,数字以我这边为准。 - **15 步和 5 步没有稳定的提速关系**。我把同一批文本用 5 步又跑了一遍:en 从 3.27s 降到 1.87s,但 ko 从 1.48s 涨到 3.14s、那条自然文本从 2.19s 涨到 4.92s。观察下来主要是"每个进程第一次生成调用偏慢(预热),之后稳定在 1.5~2 秒",步数影响被预热噪声盖住了。 ## 一个绕不开的边界:不支持中文 派工单上写的是"中文 + 至少一门外语",但实测下来:**Supertonic 2 的 5 种语言里没有中文**。我拿"你好,这是中文语音合成测试。"直接跑,报错原文: ``` Language 'zh' not supported. Choose from: en, ko, es, pt, fr ``` 这是当前最大的短板。要做中文配音,得绕道:要么等官方支持,要么换方案(比如 Kokoro 支持中文,或者云端 edge-tts)。我把这个事实如实摆在前面,免得有人装完才发现。 ## 和同类本地/开源 TTS 方案对比 | 方案 | 是否纯本地 | 要 API Key 吗 | 语言覆盖 | 速度(RTF,越低越快) | |---|---|---|---|---| | Supertonic Express(本次实测) | 是 | 否 | en/ko/es/pt/fr(无中文) | 0.23~0.47(15 步,M1 Pro 实测) | | edge-tts | 否(微软在线) | 否(但要联网) | 多语言含中文 | 依赖网络,未实测 | | Kokoro | 是 | 否 | 多语言含中文 | 0.144(官方口径,M4 Pro) | | Piper | 是 | 否 | 多语言,每语种一个模型 | 官方宣称可实时,音质一般 | | ElevenLabs / OpenAI TTS | 否(云端 API) | 是(要钱) | 多语言强 | 官方口径 0.06~0.20 | ## 几句实话 - 不支持中文,这是硬边界,别指望它现在就能配中文。 - 输出是 32 位浮点 WAV(ffprobe 显示 pcm_f32le),README 里写的是 16-bit,以实测为准;44.1kHz 单声道没问题,但 1 秒音频约 176KB,做长配音记得转码压缩。 - 首次要下 263MB 模型,网络不好会等很久;之后每次启动加载只要 1 秒左右。 - 发音准确率我没法验证(无 ASR 环境),只验证了"生成成功 + 非静音"。 - 仓库很新(2 星),README 画了不少饼,我按实测写,官方数字只作参考。 要本地、免 Key、多语言的 TTS,装一个跑跑不亏;要配中文,先等等,或者换方案。