ChatTTS-ui 本地语音合成实战:3 分钟生成你自己的专属音色
ChatTTS-ui 本地语音合成实战3 分钟生成你自己的专属音色【免费下载链接】ChatTTS-ui一个简单的本地网页界面使用ChatTTS将文字合成为语音同时支持对外提供API接口。A simple native web interface that uses ChatTTS to synthesize text into speech, along with support for external API interfaces.项目地址: https://gitcode.com/GitHub_Trending/ch/ChatTTS-uiChatTTS-ui 是一款本地网页语音合成工具在浏览器里输入文字直接得到语音无需云服务、不配 API key。它内嵌 ChatTTS 模型支持中英混杂文本同时对外暴露 HTTP 接口方便程序调用。最有意思的是它的音色定制——一个数字就能选出生成的音色或者把中意的音色固定成文件反复使用。下面先用 3 分钟拿到第一段音频再逐个拆参数。快速上手3 分钟拿到第一段语音准备好 Python 3.93.11 环境三条命令即可git clone https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui cd ChatTTS-ui pip3 install -r requirements.txt python3 app.py首次启动会自动下载模型优先 ModelScope连不上再走 Hugging Face稍等片刻后浏览器自动打开http://127.0.0.1:9966。在网页里输入文字、选个音色、点生成就能听到效果。不想用网页也可以直接调 APIcurl -X POST http://127.0.0.1:9966/tts --data text你好这是一次本地语音合成测试返回的 JSON 里有filename本地 wav 路径和url可下载地址拿到 url 直接播放即可。音色定制核心5 个参数决定声音长什么样voice决定音色的数字。内置预置音色为2222 | 7869 | 6653 | 4099 | 5099也可以传任意数字。如果 speaker/ 目录里有同名文件如2222.csv就直接用文件里的音色没有同名文件时这个数字会当作随机种子生成一个新音色并自动保存回 speaker 目录。它就像电视的频道号——频道有节目就播节目没有频道就随机切台。调完效果差在哪纯靠数字生成音色时不同机器、甚至同一台机器重复生成音调都可能漂移想固定声音就不能只依赖数字。custom_voice大于 0 的整数种子一旦设置就覆盖voice。类比成手动输入频道号优先于预置菜单。适合我就想要这一个种子对应的声音的场景。temperature随机度旋钮默认 0.3。就像音量旋钮拧小声音更稳——设 0.10.2 时语调几乎不走形适合播报调到 0.5 以上会有更多起伏但偶尔会读得放飞。prompt特殊标记串例如[oral_2][laugh_0][break_6]分别控制口腔音、笑声、停顿。它像剧本里的舞台提示告诉演员在哪里笑、在哪里停。空着就是正常陈述语气。skip_refine0 或 1。ChatTTS 合成前会先把原文润色成更适合朗读的形式refine 阶段设 1 跳过它生成更快但自然度下降。像交稿前要不要审一遍跳过快但容易留下生硬感。进阶工作流从单条到批量单条生成你已经会了。接下来是导入外部音色。0.96 版本内核升级后从外部站点下载的旧格式 pt 文件不能直接用转换流程是把以seed_开头、_emb.pt结尾的文件放进 speaker/然后运行 cover-pt.pypython cover-pt.py脚本会把它们转换成以-covert.pt结尾的文件转换完成后原文件可以删掉。再往上就是批量产出。API 支持 GET/POST 两种请求方式用 Python 循环调用即可音频统一落在static/wavs/目录文件名自带seed、tetemperature、tptop_p、tktop_k等信息方便回溯参数import requests for i in range(10): r requests.post(http://127.0.0.1:9966/tts, data{ text: f第{i}条测试文本请查收。, voice: 2222, temperature: 0.3, top_p: 0.7}) print(r.json()[audio_files][0][url])跑完觉得哪条参数合适把对应音色种子记录下来或存成文件即可。目录越积越大时可以调用/clear_wavs接口清空。调参实战三种常见场景的参数配方top_k默认 20一般不用动。下面三套组合可以直接抄场景基础音色temperaturetop_p特殊标记一句话点评正式播报22220.20.6不加语调稳定不走形新闻口播首选轻松闲聊78690.350.7[oral_1][break_2]带点口腔音和停顿更像在说话有声读物40990.30.7[break_3]句间停顿拉长长文听不累不确定音色听感的话先用几个不同数字各生成一句同样的文本对比再定参数。避坑清单4 个高频问题的解法症状原因解法首次启动卡在下载启动时自动拉模型网络或代理问题确认能连 ModelScope用 ModelScope 下载时关掉代理同一数字在别人机器上声音不同数字只是种子README 明确说明跨设备会有差异用 speaker 目录里的同名.csv/.pt文件固定音色外部下载的 pt 文件用不了0.96 内核升级后旧格式不兼容放入 speaker 目录跑python cover-pt.py转换有 N 卡却还在用 CPU装的是 CPU 版 torch或显存不足 4G卸载后重装 cu128 版 torch显存低于 4G 是设计上强制回退 CPU部署和性能上再记三点GPU 加速需要显存 4G 以上加 CUDA 12.8设备选择逻辑见 app.py要在局域网访问改.env里的WEB_ADDRESS如192.168.0.10:9966报错排查优先查 faq.md。写在最后一句话回顾音色靠数字或文件temperature管稳定prompt管戏感批量就是循环调 API。下一步建议用 5 个不同种子各生成一段试听挑中意的那个存进 speaker 目录固定下来之后所有合成都基于它微调参数即可。【免费下载链接】ChatTTS-ui一个简单的本地网页界面使用ChatTTS将文字合成为语音同时支持对外提供API接口。A simple native web interface that uses ChatTTS to synthesize text into speech, along with support for external API interfaces.项目地址: https://gitcode.com/GitHub_Trending/ch/ChatTTS-ui创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

告别“无标题”:建立高效文件命名系统与标题写作指南

告别“无标题”:建立高效文件命名系统与标题写作指南

你是不是也遇到过这种情况:一个文件在电脑里存了很久,名字一直叫“【无标题】”。不是不想起名,是真的不知道叫什么好。写文档的时候光标停在标题栏,脑子里一片空白;剪完一段视频,导出的时候默认文件名就是…

2026/9/20 7:31:18 阅读更多 →
数字绘画笔刷技术解析与画世界Pro高效应用指南

数字绘画笔刷技术解析与画世界Pro高效应用指南

1. 数字绘画工具生态现状数字绘画领域近年来呈现爆发式增长,根据行业调研数据显示,2023年全球数字艺术创作者数量已突破8000万。在这个背景下,专业绘画软件的功能迭代速度加快,而笔刷作为最核心的创作工具,其质量直接影…

2026/9/20 7:31:18 阅读更多 →
抖音无水印批量下载器:Python脚本实现与优化

抖音无水印批量下载器:Python脚本实现与优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/20 7:31:18 阅读更多 →

最新新闻

智能体安全实战指南:从提示注入到防御体系搭建与红队测试

智能体安全实战指南:从提示注入到防御体系搭建与红队测试

智能体安全最近是真的热,从圈内技术分享到安全社区议题,几乎每周都有新文章讨论。我自己的感受是,过去一年里,大模型智能体已经从“能聊天的Demo”快速进化成真正在干活的生产系统——写代码、操作数据库、调用API、审批流程、管理…

2026/9/20 8:10:36 阅读更多 →
GoCAD三维地质建模实战:从数据准备到体积计算的完整流程

GoCAD三维地质建模实战:从数据准备到体积计算的完整流程

本来答应大家写GoCAD操作记录的续篇,拖了一阵子,主要是一直在忙一个矿区的地质建模项目,赶着交成果图。陆陆续续把项目里用到的核心操作重新捋了一遍,包括安装适配、数据整理、曲面构建、体积计算这些真实流程。趁热记下来&#x…

2026/9/20 8:10:36 阅读更多 →
Virtuoso 6.1下宏力PDK实战解析:结构、SKILL与工艺角

Virtuoso 6.1下宏力PDK实战解析:结构、SKILL与工艺角

简介:围绕宏力半导体采用Cadence Virtuoso 6.1 PDK开发系统的行业案例,整理成一份面向半导体设计与工艺工程师的专业技术资料。内容重点阐述PDK自动化系统(PAS)和PDK测试系统(STEP)的架构与作用&#xff0c…

2026/9/20 8:10:36 阅读更多 →
Kimi K2.7 Code 上了 LiveCodeBench:用 TaoToken 一把 Key 跑同题集合

Kimi K2.7 Code 上了 LiveCodeBench:用 TaoToken 一把 Key 跑同题集合

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/20 8:10:36 阅读更多 →
InvenTree开源库存管理系统:免费自建的条码盘点与BOM管理,快速部署指南

InvenTree开源库存管理系统:免费自建的条码盘点与BOM管理,快速部署指南

InvenTree开源库存管理系统:免费自建的条码盘点与BOM管理,快速部署指南 【免费下载链接】InvenTree Open Source Inventory Management System 项目地址: https://gitcode.com/GitHub_Trending/in/InvenTree 月底盘库,货架上堆着的料和…

2026/9/20 8:10:36 阅读更多 →
chezmoi 模板函数 `completion`:在 dotfiles 中动态生成 Shell 补全脚本

chezmoi 模板函数 `completion`:在 dotfiles 中动态生成 Shell 补全脚本

开发工具CLI配置管理 【免费下载链接】chezmoi Manage your dotfiles across multiple diverse machines, securely. 项目地址: https://gitcode.com/gh_mirrors/ch/chezmoi 点击查看 免费下载 导读 chezmoi 提供了名为 completion 的模板函数,它能在模…

2026/9/20 8:09:35 阅读更多 →

日新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →