
TTS-Vue | 免费文字转语音
🎤 微软语音合成工具,使用 Electron + Vue + ElementPlus + Vite 构建。
注意
该软件以及代码仅为个人学习测试使用,请在下载后24小时内删除,不得用于商业用途,否则后果自负。任何违规使用造成的法律后果与本人无关。该软件也永远不会收费,如果您使用该软件前支付了额外费用,或付费获得源码以及成品软件,那么你一定被骗了!
功能简介
截至最新版本,已实现的功能:
普通文本转语音
SSML 文本转语音
批量转换
长文本/文件切片
日志
下载地址
下载地址 lanzou 密码:em1n
1. 下载并解压
下载最新版本的压缩文件,解压里面的tts-vue_1.x.x
到任意位置后,运行此安装程序。
2. 运行安装程序
提示
首次安装可以选择文件保存位置,再次安装会默认选择以前的安装位置,并且会卸载旧版本并重新安装。
选择为当前用户还是所有用户安装,点击下一步。
选择安装位置,点击安装。
🎉恭喜你,完成了安装步骤,安装成功后即可运行该程序。
😄尝试点击右下角的
开始转换
按钮,开始你的第一次文本转语音吧
问题自查
接口对应关系
Microsoft Speech API:对应微软演示页面的接口,稳定性不佳,但是免费
Edge Speech API:对应Edge浏览器的大声朗读接口,稳定性还行,免费,但是有单次的长度限制,具体限制未知,并且该接口未对文本切片
Azure Speech API:微软TTS的正式接口,稳定性最佳,每月50W字符免费,推荐有能力的人使用,需要微软账号。
Azure Speech API使用,key和region获取
微软文本转语音快速入门 【重要:请仔细阅读先决条件,里面有如何获取
key
和region
】Azure 订阅 - 免费创建订阅
在 Azure 门户中创建语音资源。
获取语音资源密钥和区域。 部署语音资源后,选择“转到资源”以查看和管理密钥。 有关 Azure AI 服务资源的详细信息,请参阅获取资源密钥。
拿到key和region后填入设置页面的相应区域。
转换失败检查:
点击左上角第4个按钮打开开发者工具
点击console打开控制台
点击custom level取消勾选Warnings
点击“开始转换”,并查看console输出内容
问题自查:
429错误: AxiosError: Request failed with status code 429 网络问题。出现429都是网络问题,调用接口过于频繁,应该是微软那边把你的IP给限制了,暂时没有解决方案。
400错误: AxiosError: Request failed with status code 400 内容错误。文本内出现了不能识别的字符,如:“&”等,或者使用了官方弃用的语音。
网络异常?
对于网络问题,我觉得这并不是软件问题造成的,也许是我技术不到位,找不到其他的原因。
猜测现在的问题是连接不上微软的服务器,属于网络问题。解决方案嘛,就像你给别人打电话,没人接听,要去找人去修电话吗?
从客户端角度,我还暂时想不到解决方案,但是我也会有空去搜索学习其他开发者的解决思路(如果有的话)。如果找到了可行的解决方 案,我会及时更新到软件上的。
对于拙作在使用过程中的不便,个人技术问题还请见谅。
我更希望你可以同时去找找其他的同类软件或程序,佛系一点,没必要花个 1 分钱喷我一下,毕竟你下载和使用过程中是完全免费的。
如果找到了很稳定且免费的软件,也可以告知我,我也好去学习下经验。
转换时间过长或转换失败如何查看原因 ?
解决方法:
点击
设置
->打开日志
,查看日志文件日志文件保存路径:
C:\Users\用户名\AppData\Roaming\tts-vue\logs
(为避免日志文件过多,记得定期手动清理日志)停在
创建webscoket连接...
是因为网络问题停在
第3次上报...
是你的文本里面有无法解析的内容。PS:现在已知无法解析的内容包括&
和 SSML 以外的标签语言。经过我多次尝试,转换 4 篇 800 字以上的高考作文用时只要 15-20 秒钟。
如何调整多音字的读音或添加中断或暂停等 ?
解决方法: 使用简单SSML或者拼音 文本内容输入这个试试,简单的读音例子:
你好啊 读<phoneme alphabet="sapi" ph="chong 2 liang 4">重量</phoneme>是不对的 要读成“重量” 或者使用拼音: 重量 重复 和颜悦色 和稀泥 zhòng liàng chóng fù hé yán yuè sè huò xī ní
停顿与不停顿,试试这个: 不停顿
你好啊<mstts:ttsbreak strength="none" />今天天气怎么样?
停顿2秒
你好啊<break time="2000ms"/>今天天气怎么样?
详情可以看:使用音素改善发音
批量转换失败或者听到都是“汪汪汪”(one one one)的声音
可能出现问题的原因:
微软那个接口只允许 utf-8,其他编码的文本都会变成 1,英文读起来就是 one,连着就是汪汪汪了。https://github.com/LokerL/tts-vue/issues/10#issuecomment-1225158716open in new window
解决方法:
已经存在的 ANSI 编码的文本文档,可以点击文件->另存为->编码:UTF-8。
新建的文本文档保存文件格式及的选择 UTF-8。 以下节选自官方:
文件是纯文本 (.txt) 或 SSML 文本 (.txt)。
文件已编码为包含字节顺序标记 (BOM) 的 UTF-8 格式。
文件是单个文件,而不是 zip 文件。
文件包含 400 多个字符(对于纯文本),或 400 个可计费字符(对于 SSML 文本),并且少于 10,000 个段落。
对于纯文本,通过点击 Enter/Return 来分隔每个段落。 请参阅纯文本输入示例。
对于 SSML 文本,每个 SSML 部分都被视为一个段落。 按不同段落分隔 SSML 部分。 请参阅 SSML 文本输入示例。
点击下载没反应,下载文件为文本文档?
可能出现问题的原因:
正确的下载方法是转换完成后点击绿色的下载图标,而不是播放器控件的扩展下载,点播放器控件的下载会默认保存为 xxxx.txt。
点击绿色下载没反应?因为默认保存位置是桌面,所以要检查当前登录的账户有没有写入桌面文件的权限。
解决方法:
尝试更改默认下载位置为其他盘。
以管理员身份运行此软件。
要是想直接用播放器控件下载音乐,可以在保存的时候更改文件名后缀为.mp3 即可。(如果你已经下载完了,可以尝试更改下载的文本文档.txt 后缀名为.mp3)
页面布局介绍
普通文本转换为语音
功能路径:
文本
侧边栏 ->文本
选项卡功能介绍:将简单的文本转为语音。
使用方法:
将文本复制到下方的文本框,即内容输入区域。
右边控制栏选择需要的语音、风格和角色等
点击
开始转换
注意:
文本较长时,软件内部会自动对文件进行切片,每 300 字左右检测下一个
, 。 ? , . ?
符号,并在此处分割,依次转为语音后自动拼接。文本较长且没有标点符号,会转换失败。
过长的文本,即使有标点符号,转换也可能会出问题。(暂时未定未到问题原因)
几千字以上或者上万字推荐自己分成多个 txt 文件批量转换。
可以在文字中加入 SSML 标签语言解决停顿、中断、多音字情况。详情请看这里
底部控制栏绿色的下载按钮可以在转换完成后下载到
SSML 转换为语音
功能路径:
文本
侧边栏 ->SSML
选项卡功能介绍:将 SSML 标签文本转为语音。
使用方法:
将 SSML 标签内容写入下方的文本框,即内容输入区域。
右边控制栏选择需要的语音、风格和角色等。
点击
开始转换
。
文本文件批量转换
功能路径:
批量
侧边栏功能介绍:将多个 txt 文档分别转为 MP3 文件。
使用方法:
点击选择文件可以选择多个文本文件,选择完成后,可以看到文件的路径、字数以及当前为
ready
状态。不需要的文件可以点击同行的
删除
按钮。在右侧的设置区域配置好相应的选项后,点击开始转换,即可转换多个文件为 mp3。默认保存路径为桌面,可以再设置页面设置保存文件路径。
注意:
文本较长时,软件内部会自动对文件进行切片,每 300 字左右检测下一个
, 。 ? , . ?
符号,并在此处分割,依次转为语音后自动拼接。文本较长且没有标点符号,会转换失败。
【重要】文本文件格式应为
utf-8
控制栏
功能路径:
控制栏
功能介绍:对转换的语音进行精细化控制。
使用方法:
选择设置国家语言。软件不支持翻译,意思是你输入的文本内容,因该是此语言能够解析的。(你输入中文,用印度语音转换那合适吗???)
选择设置语音,可以在右侧点击绿色播放按钮试听该声音。
选择设置风格、角色、语速和音调。
这些配置修改完成后可以保存配置,放便下次直接使用。
如果你给配置的名字设置为
默认
,则打开软件后会直接显示这个配置。
设置页面
功能路径:
设置
功能介绍:
下载路径:转换后的文件保存路径。
自动播放:文本/ssml 语言转语音后,是否自动播放。
版本更新弹窗提醒:发现新版本后是否弹窗提醒。
试听文本:在选择语音时,点击声音右侧播放按钮播放的内容。
模板编辑:删除在控制栏保存过的声音配置。
注意:
下载路径
、试听文本
修改完成后需要点击确认。所有设置完毕后推荐点击
刷新配置
,不然可能会失效。