AngeVoice:在飞牛上装一个能出声的中文 TTS,能用在哪、怎么装
飞牛商店里的 AngeVoice 把一个中文 TTS 服务塞进了 NAS:网页能直接合成,也能当后端给别的程序调。装法、接口、资源占用和它不适合干的事,这篇都写了。
NAS 上什么都有,就是不会说话。
照片能看、电影能放、文档能读,但你想让某个东西念出来——AI 助手回你一句、音箱播个天气、睡前把一篇文章读成音频——就得在外面找服务,或者干脆放弃。
AngeVoice 补的就是这块。飞牛商店里能装,装完是个网页 + 一组接口。
先说清楚它不是什么
它不是一个训练出来的新模型。
底子是 Kokoro 中文 TTS,作者(安歌)做的事是把它包成一个能在 NAS 上长期跑的服务:加上网页、加上 API、加上缓存和限流、加上 Docker 和商店包。
这句话很重要,因为它决定了预期。你拿到的不是一个能配纪录片的声音,是一个够用、够快、不花钱、数据不出门的合成引擎。想明白这一点,后面就不会失望。
装:三条路,挑一条
商店装(最省事)
飞牛应用商店里搜 AngeVoice,点安装。作者在 6 月那版加了 fpk 包,就是为了让不折腾 Docker 的人也能用。
一行脚本
bash <(curl -fsSL https://raw.githubusercontent.com/angevox/AngeVoice/main/scripts/install.sh)
脚本会自己看你的机器是 CPU 还是 GPU、显卡老不老,然后挑一套配置。第一次装建议走这个,比手抄 compose 稳。
Docker 手动
git clone https://github.com/angevox/AngeVoice.git
cd AngeVoice/docker/cpu # 有 N 卡就走 docker/gpu
docker compose up -d
端口记住两个:CPU 版 8100,GPU 版 8101。打开 http://你的NAS:8100 就是网页。
配置不在 compose 文件里了,单独放在 angevoice.env。改音色、改缓存、改并发,都在那儿改,改完重启容器。
网页上能干什么
打开就是最朴素的那种界面:左边一个输入框,右边几个下拉。
输一段中文,选音色,点生成,等几秒,下面出现一个播放器和下载按钮。
第一次合成会慢——模型要先加载进内存。之后就快了,同样的句子甚至会走缓存直接返回。
这个页面适合试听:换音色、试标点、听它念数字和人名的感觉。真要用起来,还是得靠接口。
真正有用的部分是那一组 API
AngeVoice 做了 OpenAI 兼容的语音接口,路径是 /v1/audio/speech。意思是:任何能对接 OpenAI TTS 的程序,把地址和端口一改,就能用你 NAS 上的这个。
curl -X POST http://192.168.1.10:8100/v1/audio/speech \
-H "Content-Type: application/json" \
-d '{"input":"今天的备份已经跑完了","voice":"中文女声"}' \
--output out.mp3
这一条能接的东西很多:
- AI 助手回你话(本地大模型 + 本地 TTS,全程不出网)
- 小智那类 ESP32 音箱的后端
- 阅读器、听书 App 的朗读源
- 自动化脚本播报(备份完成、下载好了、门开了)
- 视频配音的草稿——先听节奏对不对,再找人配
还有 WebSocket 流式。这个才是给实时对话用的:不用等整段合成完,边生成边往回吐,延迟低很多。做语音助手的话,流式和非流式是两种体验。
批量合成也支持,一次提交多段,打包成 ZIP 给你。
它吃多少资源
作者贴过一次实测,机器是 i3-9100T,跑 MOSS 克隆模式,合成一万字左右的长文本:
- CPU 大概 75%
- 内存 5.8 GB
这数字看着吓人,但有个前提:那是克隆模式,也就是拿一段参考音频去模仿音色,属于最重的用法。只跑 Kokoro 普通合成,压力小得多。
还有个细节我觉得挺好:空闲十分钟左右会自动把模型卸掉,容器内存掉到 200 MB 上下。对 NAS 来说这一步很关键——不然一个 TTS 服务能常年占着五六个 G。
硬件建议:8 GB 内存能跑,16 GB 舒服。想玩音色克隆,老实上 N 卡,CPU 上等得人心烦。
音质这件事,得说实话
Kokoro 是小模型。它念得清楚、节奏也自然,但你要拿它配一条宣传片,会听出那种"机器在念稿"的感觉——重音位置固定,长句的换气不明显,情绪基本没有。
它擅长的场景是信息播报:天气、日程、通知、文章朗读、助手回话。这些场合没人要求它有感情,只要求别念错、别卡。
真要接近真人,得上更大的模型(MOSS 那类),代价是算力和等待时间。AngeVoice 把这几种放在一个服务里让你选,这个设计比"押注一个模型"聪明。
装的时候可能遇到的
第一次生成特别久 模型要下载、要加载。等过一次就好。
拉镜像卡住
早期版本走 ghcr.io,国内经常拉不动。作者后来改成默认 Docker Hub 了,新版别再手动指定 ghcr。
管理页面有点糙
/admin 那页还有些细节没打磨完,作者自己也说了准备放到下个版本。日常用不到它,别在那上面较劲。
克隆不像 参考音频的质量决定一切。手机随手录的一段,和安静环境下录的三十秒,结果差很远。
适合谁,不适合谁
手里有台常年开着的飞牛、想让家里的东西"会说话"——装。
只想在手机上点一下把一段文字转成语音,转完就删——别装。商店里随便一个 App 都比这个省事。
想给自己的视频配一条有人味的旁白——先别指望它,去试听一下再说。
最后
AngeVoice 的位置挺微妙的:比在线 TTS 麻烦,比大模型轻,正好卡在"愿意折腾、但不想烧显卡"的那条线上。
项目在 GitHub 上还活着,作者更新挺勤,从 compose 到 fpk 包、从 ghcr 换 Docker Hub、加自动释放模型,都是照着用户的抱怨改的。
仓库:https://github.com/angevox/AngeVoice
装完如果卡在哪一步,留言,我补进这篇。
留言