新一代开源语音库CoQui TTS冲到了GitHub 20.5k Star

news2025/7/17 20:17:25

Coqui TTS 项目介绍

Coqui 文本转语音(Text-to-Speech,TTS)是新一代基于深度学习的低资源零样本文本转语音模型,具有合成多种语言语音的能力。该模型能够利用共同学习技术,从各语言的训练资料集转换知识,来有效降低需要的训练资料量。

这个模型库现在已经在GitHub上开源,并有高达 20.5K+ 的star量。似乎和以前讲过的Mozilla 的 TTS 有着千丝万缕的联系,但是如今Mozilla TTS 已经停止更新,而 Coqui TTS 更新稳定,是目前少数几个更新比较稳定的开源语音库。

coqui官网:https://coqui.ai/

开源地址:https://github.com/coqui-ai/TTS/

在这里插入图片描述

Arm架构离线安装 coqui TTS

要在 ARM 架构的设备上离线安装 Coqui TTS,可以按照以下步骤进行操作:

  1. 1. 安装必要的依赖项:Python 3PipGit.

2.克隆CoquiTTS 的Git 仓库.

git clone https://github.com/coqui-ai/TTS

3.安装所需的Python包.

pip install -r requirements.txt

4.下载所需的语音模型和配置文件,并将其放在IIS/tts/mode1s 目录下.可以从 CoquiTTS 的GitHub 页面上下载这些文件.

5.运行测试脚本来验证安装是否成功.

python demo_cli .py

注意,由于 ARM 架构的设备通常性能较低,因此可能需要更长时间才能完成编译和训练等操作。此外,如果您希望在 ARM 架构的设备 上进行 TTS 实时推理,则可能需要使用较小的模型或调整一些模型参数以提高性能。

python 命令行安装及使用

1.安装

pip install tts

注意 TTS 是依赖 torch 的,由于 torch 庞大的体积,所以可能是要等很久。但是我这里由于环境问题,只能用特定版本的 torch,否则用不了 GPU。

2.安装完成后测试

tts --list_models

输出模型的信息,说明OK

Name format: type/language/dataset/model
 1: tts_models/multilingual/multi-dataset/your_tts
 2: tts_models/en/ek1/tacotron2
 ....

查看模型信息

tts --model_info_by_name tts_models/tr/common-voice/glow-tts
> model type : tts_models
> language supported : tr
> dataset used : common-voice
> model name : glow-tts
> description : Turkish GlowTTS model using an unknown speaker from the Common-Voice dataset.
> default_vocoder : vocoder_models/tr/common-voice/hifigan

文本生成语音

tts --text "text for TTS" --out_path ./test_speech.wav
100%|████████████████████████████                                                                                                                                                    █████████████████████████████████                                                                                                                                                          █████████████████████████████████                                                                                                                                                          █████████████████████████████████                                                                                                                                                          ████████████████████| 113M/113M [                                                                                                                                                          05:58<00:00, 315kiB/s]
> Model's license - apache 2.0
> Check https://choosealicense.c                                                                                                                                                          om/licenses/apache-2.0/ for more                                                                                                                                                           info.
> Downloading model to /root/.lo                                                                                                                                                          cal/share/tts/vocoder_models--en-                                                                                                                                                          -ljspeech--hifigan_v2
100%|█| 3.80M/3.80M [00:01<00:00,
> Model's license - apache 2.0
......
Removing weight norm...
> Text: text for TTS
> Text splitted to sentences.
['text for TTS']
> Processing time: 0.78575992584                                                                                                                                                          22852
> Real-time factor: 0.4602105388                                                                                                                                                          021246
> Saving output to ./test_speech                                                                                                                                                          .wav

离线安装TTS

以下是在Linux系统上离线安装CoquiTTS的步骤:

1.下载CoquiTTS的代码.

git clone https://github.com/coqui-ai/TTS

2.安装依赖项.

sudo apt-get install python3-pip libsndfile1
pip3 install -r requirements.txt

3.下载所需的模型,例如英文的Tacotron2模型.

wget https://github.com/coqui-ai/TTS/releases/download/tts_models/tts_models_tacotron2_anon.tar.bz2
tar xvf tts_models_tacotron2_anon.tar.bz2

4.设置环境变量.

export PYTHONPATH=$PYTHONPATH: /path/to/TTS

5.启动TTS服务器.

python3 server.py --model_path /path/to/tacotron2 --config_path /path/to/tacotron2/config.json --port 8000

其中/path/to/tacotron2 为第3步中下载的Tacotron2模型的路径,/path/to/tacotron2/config. json 为Tacotron2模型的配置文件的路径。

6.连接到TTS服务器并进行语音合成.

import requests
import ison
r = requests.post('http://localhost:8000/api/tts', data=json.dumps(
    {"text": "hello", "model_name": "ntacotron2"}
))
with open ("output .wav", "wb") as f:
    f.write(r.content)

这将生成一个名为 output .wav 的WAV文件,其中包含语音合成的结果。

有兴趣的有条件的同学可以下载体验一番,试一试!欢迎关注公粽号:Python兴趣圈,学习更多Python技能、开源项目推荐。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1102814.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Leetcode刷题详解——将x减到0的最小操作数

1. 题目链接&#xff1a;1658. 将 x 减到 0 的最小操作数 2. 题目描述: 给你一个整数数组 nums 和一个整数 x 。每一次操作时&#xff0c;你应当移除数组 nums 最左边或最右边的元素&#xff0c;然后从 x 中减去该元素的值。请注意&#xff0c;需要 修改 数组以供接下来的操作…

windows常用命令

一.文件操作 dir&#xff1a;查看文件当前路径目录列表 cd .. &#xff1a;返回上一级目录 cd 路径&#xff1a;进入路径

解决telnet不是内部或外部以及验证某个端口是否开放

1.怎么解决telnet不是内部或外部命令 &#xff08;1&#xff09;telnet在win10下默认是不开启的&#xff0c;所以需要我们自己手动开启。 &#xff08;2&#xff09;在控制面板中&#xff0c;我们选择程序–启动或关闭windows功能&#xff0c;然后勾选Telnet客户端选项&#…

Python 连接数据库添加字段

任务需求&#xff1a; 数据库hospital集合所有数据添加一个八位数的编码 import pymongo# 连接数据customer&#xff08;库&#xff09;hospital&#xff08;集合&#xff09; client pymongo.MongoClient(host127.0.0.1) db client.customer collection db.hospitalhospit…

正向代理与反向代理

正向代理 客户端想要直接与目标服务器连接&#xff0c;但是无法直接进行连接&#xff0c;就需要先去访问中间的代理服务器&#xff0c;让代理服务器代替客户端去访问目标服务器 反向代理 屏蔽掉服务器的信息&#xff0c;经常用在多台服务器的分布式部署上&#xff0c;像一些大型…

Unreal Engine 4 + miniconda + Python2.7 + Pycharm

1.​首先启用UE4插件里的Python Scripting插件 ​ 2. 在UE4项目设置中 开启Python开发者模式 生成unreal.py文件&#xff0c;用于在Pychram中引入Unreal PythonAPI 生成的unreal.py 在&#xff1a; "项目路径\Intermediate\PythonStub\unreal.py"3. 安装Miniconda…

问题记录1 json解析问题

问题&#xff1a; json解析int类型不符合预期&#xff0c;使用json.NewDecoder解决。 示例如下&#xff1a; package mainimport ("bytes""encoding/json""fmt" )func main() {data1 : map[string]interface{}{}data1["id"] int64(4…

纽交所上市公司安费诺宣布将以1.397亿美元收购无线解决方案提供商PCTEL

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;纽交所上市公司安费诺(APH)宣布将以每股7美元现金&#xff0c;总价格1.397亿美元收购无线解决方案提供商PCTEL(PCTI)。 该交易预计将在第四季度或2024年初完成。 Lake Street Capital Markets担任…

如何通过工单管理系统提高服务质量和客户满意度?

在这个高速发展的时代&#xff0c;企业面临着前所未有的挑战。其中&#xff0c;如何提高工作服务效率&#xff0c;成为了摆在每个企业面前的关键问题。在这个背景下&#xff0c;一款全新的工单管理系统——“的修”应运而生&#xff0c;它可以为您提供了优化工单流程的解决方案…

Java —— 运算符

目录 1. 什么是运算符 2. 算术运算符 2.1 基本四则运算符: 加减乘除模( - * / %) 2.2 增量运算符 - * %与 自增/自减运算符 -- 3. 关系运算符 4. 逻辑运算符 4.1 逻辑与 && 4.2 逻辑或|| 4.3 逻辑非 ! 4.4 短路求值 5. 位运算符 5.1 按位与 & 5.2 按位或 5.3 按位…

Day2力扣打卡

打卡记录 无限数组的最短子数组&#xff08;滑动窗口&#xff09; 链接 思路&#xff1a;先求单个数组的总和&#xff0c;再对两个重复数组所组成的新数组上使用 不定长的滑动窗口 来求得满足目标的最小长度。 class Solution { public:int minSizeSubarray(vector<int>…

项目经理每天,每周,每月的工作清单

很多不懂项目管理的伙伴问&#xff0c;项目经理每天每周每个月的工作是什么呢&#xff1f; 仿佛他们什么都管&#xff0c;但是又没有具体的产出&#xff0c;但是每天看他们比谁都忙&#xff0c;其实很简单&#xff0c;项目中的每个环节负责具体的事情&#xff0c;但是每个环节…

一文秒懂AGC/AVC,以及什么是光伏电站AGC,AVC装置?AGC,AVC装置的功能与用途?

一&#xff1a;什么是光伏电站 AGC,AVC&#xff1f; 电力系统中的AGC代表自动发电控制&#xff08;Automatic Generation Control&#xff09;&#xff0c;AVC代表自动电压控制&#xff08;Automatic Voltage Control&#xff09;。 AGC是一种用于调节发电机输出功率的自动控…

VMware 配置记录

VMware 配置笔记 CentOS 7.9 镜像下载 官网太慢&#xff0c;建议在阿里云镜像站去CentOS配置页找标准版下载。 选标准版即可&#xff0c;各版本区别&#xff1a; DVD&#xff1a;标准版&#xff0c;包含常用软件&#xff0c;体积为 4.4 G&#xff1b;Everything&#xff1a…

可信执行环境简介:ARM 的 TrustZone

目录 可信执行环境安全世界与普通世界 - 上下文切换机制ARMv7 中的异常处理ARMv8 中的异常处理 信任区商业实施TrustZone 本身的漏洞高通Trustonic 信任区强化的弱点结论声明 可信执行环境 具有信任区的 ARM 处理器实现了架构安全性每个物理处理器内核提供两个虚拟的扩展 核心…

英国人工智能公司【TitanML】完成280万美元融资

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;总部位于英国伦敦的人工智能公司【TitanML】近期宣布已完成280万美元种子轮融资&#xff0c;该公司的产品允许机器学习团队部署大型语言模型(llm)。 本轮融资由Octopus Ventures领投&#xff0c;还…

线程同步代码块

同步代码块 作用&#xff1a;把访问共享资源的核心代码给上锁 &#xff0c;以此保证线程安全 原理&#xff1a;每次只有允许一个线程加锁以后进入。执行完毕以后自动解锁 。 其他线才可以进来执行。同步代码的注意事项 对于当前同时执行的线程来说 &#xff0c;同步锁必…

Vue Router - 路由的使用、两种切换方式、两种传参方式、嵌套方式

目录 一、Vue Router 1.1、下载 1.2、基本使用 a&#xff09;引入 vue-router.js&#xff08;注意&#xff1a;要在 Vue.js 之后引入&#xff09;. b&#xff09;创建好路由规则 c&#xff09;注册到 Vue 实例中 d&#xff09;展示路由组件 1.3、切换路由的两种方式 1.…

【Java 进阶篇】JavaScript BOM(浏览器对象模型)详解

BOM&#xff0c;即浏览器对象模型&#xff08;Browser Object Model&#xff09;&#xff0c;是JavaScript与浏览器之间的接口&#xff0c;它允许JavaScript与浏览器进行交互&#xff0c;实现访问和控制浏览器窗口、文档和其他浏览器功能的功能。本文将详细介绍BOM的各个方面&a…

做web自动化测试遇到Chrome浏览器老是自动更新,怎么办 ? 这里提供两个解决办法 。

web自动化安装驱动安装 进行web自动化时 &#xff0c;需要提前安装浏览器的驱动 &#xff0c;尤其是chrome浏览器 。它的更新速度很快 &#xff0c;是不是更新了新版本 。这就导致我们的驱动也要跟着变化。 1.停止自动更新 那么 &#xff0c;如何关闭chrome浏览器的自动更新…