🎤 微软语音合成工具,使用 Electron + Vue + ElementPlus + Vite 构建。

注意

该软件以及代码仅为个人学习测试使用,请在下载后24小时内删除,不得用于商业用途,否则后果自负。任何违规使用造成的法律后果与本人无关。该软件也永远不会收费,如果您使用该软件前支付了额外费用,或付费获得源码以及成品软件,那么你一定被骗了!

功能简介

截至最新版本,已实现的功能:

  • 普通文本转语音

  • SSML 文本转语音

  • 批量转换

  • 长文本/文件切片

  • 日志

下载地址

1. 下载并解压

下载最新版本的压缩文件,解压里面的tts-vue_1.x.x到任意位置后,运行此安装程序。

2. 运行安装程序

提示

首次安装可以选择文件保存位置,再次安装会默认选择以前的安装位置,并且会卸载旧版本并重新安装。

选择为当前用户还是所有用户安装,点击下一步。

选择安装位置,点击安装。

🎉恭喜你,完成了安装步骤,安装成功后即可运行该程序。

😄尝试点击右下角的开始转换按钮,开始你的第一次文本转语音吧

问题自查

接口对应关系

  1. Microsoft Speech API:对应微软演示页面的接口,稳定性不佳,但是免费

  2. Edge Speech API:对应Edge浏览器的大声朗读接口,稳定性还行,免费,但是有单次的长度限制,具体限制未知,并且该接口未对文本切片

  3. Azure Speech API:微软TTS的正式接口,稳定性最佳,每月50W字符免费,推荐有能力的人使用,需要微软账号。

Azure Speech API使用,key和region获取

  • 微软文本转语音文档

  • 微软文本转语音概述

  • 微软文本转语音快速入门 【重要:请仔细阅读先决条件,里面有如何获取keyregion

    • Azure 订阅 - 免费创建订阅

    • 在 Azure 门户中创建语音资源。

    • 获取语音资源密钥和区域。 部署语音资源后,选择“转到资源”以查看和管理密钥。 有关 Azure AI 服务资源的详细信息,请参阅获取资源密钥。

  • 拿到key和region后填入设置页面的相应区域。

转换失败检查:

  1. 点击左上角第4个按钮打开开发者工具

  2. 点击console打开控制台

  3. 点击custom level取消勾选Warnings

  4. 点击“开始转换”,并查看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í 
    

    image停顿与不停顿,试试这个: 不停顿

    你好啊<mstts:ttsbreak strength="none" />今天天气怎么样?
    

    停顿2秒

    你好啊<break time="2000ms"/>今天天气怎么样?
    

    image详情可以看:使用音素改善发音

批量转换失败或者听到都是“汪汪汪”(one one one)的声音

  • 可能出现问题的原因:

  • 解决方法:

    1. 已经存在的 ANSI 编码的文本文档,可以点击文件->另存为->编码:UTF-8。

    2. 新建的文本文档保存文件格式及的选择 UTF-8。 以下节选自官方:

    • 文件是纯文本 (.txt) 或 SSML 文本 (.txt)。

    • 文件已编码为包含字节顺序标记 (BOM) 的 UTF-8 格式。

    • 文件是单个文件,而不是 zip 文件。

    • 文件包含 400 多个字符(对于纯文本),或 400 个可计费字符(对于 SSML 文本),并且少于 10,000 个段落。

      • 对于纯文本,通过点击 Enter/Return 来分隔每个段落。 请参阅纯文本输入示例。

      • 对于 SSML 文本,每个 SSML 部分都被视为一个段落。 按不同段落分隔 SSML 部分。 请参阅 SSML 文本输入示例。

点击下载没反应,下载文件为文本文档?

  • 可能出现问题的原因:

    1. 正确的下载方法是转换完成后点击绿色的下载图标,而不是播放器控件的扩展下载,点播放器控件的下载会默认保存为 xxxx.txt。

    2. 点击绿色下载没反应?因为默认保存位置是桌面,所以要检查当前登录的账户有没有写入桌面文件的权限。

  • 解决方法:

    1. 尝试更改默认下载位置为其他盘。

    2. 以管理员身份运行此软件。

    3. 要是想直接用播放器控件下载音乐,可以在保存的时候更改文件名后缀为.mp3 即可。(如果你已经下载完了,可以尝试更改下载的文本文档.txt 后缀名为.mp3)

页面布局介绍

  • 普通文本转换为语音

    • 功能路径:文本侧边栏 -> 文本选项卡

    • 功能介绍:将简单的文本转为语音。

    • 使用方法:

      1. 将文本复制到下方的文本框,即内容输入区域。

      2. 右边控制栏选择需要的语音、风格和角色等

      3. 点击开始转换

    • 注意:

      1. 文本较长时,软件内部会自动对文件进行切片,每 300 字左右检测下一个, 。 ? , . ?符号,并在此处分割,依次转为语音后自动拼接。

      2. 文本较长且没有标点符号,会转换失败。

      3. 过长的文本,即使有标点符号,转换也可能会出问题。(暂时未定未到问题原因)

      4. 几千字以上或者上万字推荐自己分成多个 txt 文件批量转换。

      5. 可以在文字中加入 SSML 标签语言解决停顿、中断、多音字情况。详情请看这里

      6. 底部控制栏绿色的下载按钮可以在转换完成后下载到

    SSML 转换为语音

    • 功能路径:文本侧边栏 -> SSML选项卡

    • 功能介绍:将 SSML 标签文本转为语音。

    • 使用方法:

      1. 将 SSML 标签内容写入下方的文本框,即内容输入区域。

      2. 右边控制栏选择需要的语音、风格和角色等。

      3. 点击开始转换

    文本文件批量转换

    • 功能路径:批量侧边栏

    • 功能介绍:将多个 txt 文档分别转为 MP3 文件。

    • 使用方法:

      1. 点击选择文件可以选择多个文本文件,选择完成后,可以看到文件的路径、字数以及当前为ready状态。

      2. 不需要的文件可以点击同行的删除按钮。

      3. 在右侧的设置区域配置好相应的选项后,点击开始转换,即可转换多个文件为 mp3。默认保存路径为桌面,可以再设置页面设置保存文件路径。

    • 注意:

      1. 文本较长时,软件内部会自动对文件进行切片,每 300 字左右检测下一个, 。 ? , . ?符号,并在此处分割,依次转为语音后自动拼接。

      2. 文本较长且没有标点符号,会转换失败。

      3. 【重要】文本文件格式应为utf-8

    控制栏

    • 功能路径:控制栏

    • 功能介绍:对转换的语音进行精细化控制。

    • 使用方法:

      1. 选择设置国家语言。软件不支持翻译,意思是你输入的文本内容,因该是此语言能够解析的。(你输入中文,用印度语音转换那合适吗???)

      2. 选择设置语音,可以在右侧点击绿色播放按钮试听该声音。

      3. 选择设置风格、角色、语速和音调。

      4. 这些配置修改完成后可以保存配置,放便下次直接使用。

      5. 如果你给配置的名字设置为默认,则打开软件后会直接显示这个配置。

    设置页面

    • 功能路径:设置

    • 功能介绍:

      1. 下载路径:转换后的文件保存路径。

      2. 自动播放:文本/ssml 语言转语音后,是否自动播放。

      3. 版本更新弹窗提醒:发现新版本后是否弹窗提醒。

      4. 试听文本:在选择语音时,点击声音右侧播放按钮播放的内容。

      5. 模板编辑:删除在控制栏保存过的声音配置。

    • 注意:

      1. 下载路径试听文本修改完成后需要点击确认。

      2. 所有设置完毕后推荐点击刷新配置,不然可能会失效。