ChatTTS增强版,增强音质、批量处理、固定音色、支持长文本

大家好,最近ChatTTS文字生成语音项目挺火。只需要输入一段文字,就可以生成一段非常逼真的声音。声音的效果非常不错。它支持英文和中文两种语言。我在原版的基础上做了一些改动,整合包分享给大家。

功能介绍

除了基础的文本生成音频功能以外。这个版本我还添加了额外的功能。

音频增强

在生成的过程中发现有的音频会有高频噪音,音质不是很好的情况。于是增加了一个增强功能用于解决这个问题。

关于具体的每个参数怎么用,界面上写的很清楚了,这里我不过多解释。默认的音频增强参数已经够用。

开启音频增强/降噪会增加生成时间,这个大家应该也能明白,毕竟处理多了一步。

文本切割

用于解决ChatTTS长文本时音频异常的问题。文本切割和批量是不能同时打开的。

当你文本内容很多时,可以勾选此选项。

默认是50字符进行切割,可改变此选项来调节切割长度。

批量功能

上传一个txt文本,生成时程序会批量读取文本内容,生成切分音频。

这个功能是最后加上的,本来其他功能都已经做完了,准备打包了,一位群友找到我问能不能做ChatTTS项目,并且有没有可能加上批量?那不正好一拍即合了,于是我加班加点安排上了。

为什么选择txt?因为剪映正好可以导出txt文本,所以按照剪映的格式来了。后续考虑增加更多格式支持。

下面是文本的示例,会按照每行进行切分生成。

音频合成

开启后会在长文本或者txt处理完成后合成一整段音频。

如果你开了音频增强或者降噪。会分别生成合成后的原音频、合成后并增强的音频。

输出路径

单段音频生成路径:output_audio/audioclip/segment_0.wav

单段增强音频生成路径:output_audio/audioclip/enhanced_segment_0.wav

合成音频生成路径:output_audio/concatenated_audio.wav

合成增强音频生成路径:output_audio/concatenated_enhanced_audio.wav

配置管理

由于ChatTTS生成的音色是随机的,所以做了个配置界面方便管理音色种子、以及其他参数的设置。

不同的音频种子参数生成的音色也不一样。你可以随机抽取一个你觉得还行的音色。

  1. 取一个配置文件名字。
  2. 点击保存音色配置。会将界面上的设置、音色种子等参数都保存下来。
  3. 提示保存成功。
  4. 刷新下配置列表,可以看到刚才保存的配置文件。
  5. 选择配置文件。
  6. 应用配置文件的参数。

配置要求

以下是整合包运行所需配置

WIN

  • Windwos10/11操作系统
  • 支持CPU/GPU

MAC

  • Apple Silicon M系列芯片、Intel 芯片
  • MacOS 10.13以上版本

关于显存,这里引入一段官方原话

对于30s的音频, 至少需要4G的显存. 对于4090, 1s生成约7个字所对应的音频. RTF约0.3.

需要注意

模型稳定性似乎不够好, 会出现其他说话人或音质很差的现象.

这是自回归模型通常都会出现的问题. 说话人可能会在中间变化, 可能会采样到音质非常差的结果, 这通常难以避免. 可以多采样几次来找到合适的结果.

整合包获取

👇🏻👇🏻👇🏻下方下方下方👇🏻👇🏻👇🏻

关注公众号,发送【ChatTTS】关键字获取整合包。

如果发了关键词没回复你!记得看下复制的时候是不是把空格给粘贴进去了!

制作不易,如果本文对您有帮助,还请点个免费的赞或在看!感谢您的阅读!

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

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

相关文章

实验10 RIP协议配置

实验10 RIP协议配置 一、原理描述二、RIPv1配置(一)实验目的(二)实验内容(三)实验配置(四)实验步骤 三、 RIPv2配置(一)实验目的(二)实…

IT闲谈——什么是容器?

目录 什么是容器一、容器的起源与发展二、目前使用较多的容器三、容器能用来做什么四、容器的应用场景 什么是容器 随着云计算和微服务的兴起,容器技术逐渐成为IT行业的热门话题。容器,简而言之,是一种轻量级的、可移植的、独立的软件包&…

windows 使用脚本 批量将一个文件夹下面 子文件夹下的视频文件拷贝到另一个文件下

如果想要在Windows上使用脚本(比如批处理脚本 .bat)来复制指定文件夹下所有子文件夹中的视频文件到另一个目标文件夹,可以使用以下的批处理脚本示例: echo off setlocal enabledelayedexpansion :: 设置源文件夹和目标文件夹的…

职称继续教育--专业课6

单选题(共20题,每题1.5分) 1、新型城镇化改革试点的总体要求是:以人的城镇化为核心,以()为关键,大胆探索,试点先行。 A、提升质量 2、根据本讲,建设和管理城…

cesium 之 flyTo、setView、lookat

orientation配置项的参数 cesium中,朝向orientation,通常使用heading、pitch、roll这三个参数来描述 heading 通过调整heading的值,使相机朝向特定的方向朝向方向说明【北:0, 东:π/2弧度, …

Keras深度学习框架实战(6):使用CNN-RNN架构实现视频分类

1、绪论 1.1 CNN-RNN概述 1.1.1 结构组成 CNN-RNN架构结合了卷积神经网络(CNN)和循环神经网络(RNN)两种不同类型的神经网络结构。 卷积神经网络(CNN): 主要用于处理具有网格状拓扑结构的数据…

VLM学习笔记

目录 基础VLM模型CLIP CLIP (Contrastive Language-Image Pre-training) clip的再训练 CLIP-Chinese 轻量化VLM探索:MobileVLM V2 怎么预训练VLMs? TurboMind LLM推理引擎 基础VLM模型CLIP CLIP (Contrastive Language-Image Pre-training) 基本…

【Python】轻松打包:CentOS7上使用PyInstaller将Shell脚本转换为可执行文件的完美指南

【Python】轻松打包:CentOS7上使用PyInstaller将Shell脚本转换为可执行文件的完美指南 大家好 我是寸铁👊 总结了一篇【Python】轻松打包:CentOS7上使用PyInstaller将Shell脚本转换为可执行文件的完美指南✨ 喜欢的小伙伴可以点点关注 &#…

【CXL协议-控制和状态寄存器(8)】

8.0 控制和状态寄存器 Compute Express Link 设备控制和状态寄存器被映射到单独的空间:配置空间和内存映射空间。配置空间寄存器使用配置读取和配置写入进行访问。内存映射寄存器使用内存读取和内存写入进行访问。表 123 总结了本章中定义的寄存器位的属性。除非另…

人员身份级的数据中心机房作业随工

电信运营商的数据中心机房作为承载各类业务系统的物理基础,其运维安全直接关系到业务的连续性和数据的安全性。传统的机房管理方式依赖人工审核和监督,存在效率低下、安全隐患多等问题。因此,通过综合运用物联网、大数据分析和人工智能技术&a…

机器学习AI大模型的开源与闭源:哪个更好?

文章目录 前言一、开源AI模型1.1 开源的优点1.2 开源的缺点 二、闭源AI模型2.1 闭源的优点2.2 闭源的缺点 三、开源与闭源的平衡3.1 开源与闭源结合的案例3.2 开源与闭源的战略选择 小结 前言 在过去的几年里,人工智能(AI)和机器学习&#xf…

Docker 基础使用(3) 存储卷

文章目录 存储卷的含义存储卷的分类存储卷的作用存储卷的使用存储卷实际使用案例 ---- MySQL灾难恢复存储卷的局限 Docker 基础使用(0)基础认识 Docker 基础使用 (1) 使用流程概览 Docker 基础使用(2) 镜像与容器 Docker 基础使用…

fast admin实现多数据库导入数据

思路 1创建多数据库连接 2后端的前台代码能使用get或者post请求传递选中数据给后台 3后台能够接收到 4后台接收到id或者全字段数据后对数据进行处理,然后使用多数据库操作将其存入第二个数据库 实现 1config文件下创建新数据库连接 db_config2 > [// 数据库类…

LeetCode24_两两交换链表中的节点

. - 力扣(LeetCode) 一、题目: 二、模拟 1. 第一步 2. 第二步:current next.next 3. 第三步: next.next current 4. 第四步:pre.next next; 到这里为止实现了两个节点的交换 5. 第五步:pre current;…

【机器学习】朴素贝叶斯算法及其应用探索

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 朴素贝叶斯算法及其应用探索引言1. 朴素贝叶斯基本概念1.1 贝叶斯定理回顾1.2 朴…

基于 Spring Boot 博客系统开发(十三)

基于 Spring Boot 博客系统开发(十三) 本系统是简易的个人博客系统开发,为了更加熟练地掌握 SprIng Boot 框架及相关技术的使用。🌿🌿🌿 基于 Spring Boot 博客系统开发(十二)&…

【Linux-Uboot】

Linux-Uboot ■ Uboot使用 串口软件(超级终端)接受文件■ ■ Uboot使用 串口软件(超级终端)接受文件 添加链接描述 ■

NGINX之location和rewrite

一.NGINX常用的正则表达式 二.Location location作用:对访问的路径做访问控制或者代理转发 1.location 常用的匹配规则: 进行普通字符精确匹配,也就是完全匹配^~ / 表示普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其它 …

redis源码解析-字符串

摘要 redis中string是最简单Redis类型,本文主要通过查看源代码了解string的实现原理。 简单动态字符串 redis没有使用c语言传统的字符串表示,而是自己构建了一种名为简单动态字符串(Simple dynamic string,SDS)的抽象类型&…

JVM学习-监控工具(一)

使用数据说明问题,使用知识分析问题,使用工具处理问题 无监控,不调优! 命令行工具 在JDK安装目录下,可以查看到相应的命令行工具,如下图 jps(Java Process Status) 显示指定系统内所有的Hotpot虚拟机…