tts with rvc

2025-12-11 0 594

tts-with-rvc 0.1.9

TTS-WITH-RVC (带RVC的文本语音是一个软件包,旨在通过引入RVC模块来增强文本到语音(TTS)系统的功能。该软件包使用户不仅可以将文本转换为语音,还可以根据RVC支持的偏好来个性化和自定义语音输出。

需要带有CUDA或MPS的Pytorch才能获得TTS-RVC工作。

它可能包含错误。报告错误的问题。

发行说明

0.1.9- 2025年3月31日:一些小修复程序,修复了Linux的Fairseq安装。

0.1.8- 2025年3月30日:添加了所有RVC参数,实现的FCPE支持,添加了PYPI安装支持,使用RMVPE仅F0方法修复了错误。

0.1.6- 2025年3月28日:更新了所有文件,其中最新的RVC提交-1.5-2倍的推理速度1.5-2倍。减少所需的包装。在这里支持。

0.1.5- 2025年2月21日:删除了所有不必要的软件包,删除了rvc_path ,添加了f0_method以进行更多控制。

0.1.4- 2024年11月22日:添加了index_pathindex_rate参数,以更多地控制基于索引的语音转换。

0.1.3-解决了很多问题,有些优化。

先决条件

您必须安装Python <= 3.12 (建议3.12,大部分在3.10上进行测试)。

您必须为您的GPU提供CUDA或MPS支持(MPS尚未测试)。否则,它将使用CPU,这非常慢。

安装

  1. 在此处安装带有CUDA或MPS支持的Pytorch:https://pytorch.org/get-started/locally/

  2. 然后,使用PIP安装安装TTS-WITH-RVC:

 pip install tts-with-rvc
  1. 最后,如果您还没有一个,则安装FFMPEG,并使用脚本将其添加到文件夹中,或者更好,或者更好地将FFMPEG添加到Path中的Environment variables中。

它如何工作

  1. 文本到语音(TTS):用户将文本输入TTS模块,然后将其处理并生成相应的语音作为保存在temp Directory中的文件
  2. RVC:提供.pth文件后,RVC模块读取生成的音频文件,对其进行处理并生成一个新的音频,该音频保存在output_directory中并更换了语音。

用法

tts-with-rvc有一个称为TTS_RVC的类。需要一些参数:

model_path通往.pth模型的路径

和可选参数:

voice – edge-tts列表中的声音(默认是“ ru-ru-dmitryneal”)

device – 设置设备(“ CPU”,“ CUDA:0”,“ MPS:0”,默认为“ CUDA:0”

tmp_directory通往TTS输入目录的路径(用于保存TTS输出的临时目录,默认为temp文件夹)

output_directory保存声音音频的目录( temp/默认值)。

index_path语音模型调整的文件索引路径(默认为空字符串\"\" )。

index_rate原始语音转换和索引语音转换之间的混合速率(默认为0.75 )。

f0_method计算音频音调的方法(默认为rmvpe )。可用:\’rmvpe\’,\’fcpe\’(仅FP32),\’pm\’,\’carvest\’,\’dio\’,\’crepe\’。

弃用:

input_directory通往TTS输入目录的路径(用于保存TTS输出的临时目录,默认为无)

要设置语音,首先,使tts_rvc的实例:

 from tts_with_rvc import TTS_RVC

tts = TTS_RVC ( model_path = \"models \\\\ YourModel.pth\" ,
                index_path = \"logs \\\\ YourIndex.index\" ,
                f0_method = \"rmvpe\" )

voices.txt文件中放置的所有声音:

由于问题, tts.get_voices()无限期地禁用

接下来,使用tts.set_voice()函数设置tts的语音:

 tts . set_voice ( \"un-Un-SelectedNeural\" )

如果您使用其他语言来配音,则需要设置适当的语言!

最后一步是调用tts替换语音:

 path = tts ( text = \"Привет, мир!\" , pitch = 6 , index_rate = 0.50 )

参数:

text – tts的文字(必需)

pitch – 半音中RVC的音高更改(可选,neg。值兼容,默认值为0)

tts_rate边缘tts以百分比(+ – )的额外语音率(可选,neg。值兼容,默认值为0)

tts_volume边缘tts以百分比(+ – )(可选,neg。值兼容,默认值为0)的额外语音量

tts_pitch hz(+ – )中TTS生成音频的额外音调(可选,neg。值是兼容的,不建议,默认值为0)

output_filename输出文件的名称(可选,默认值None ,生成唯一名称)

index_rate原始语音转换(0至1)之间的混合速率(可选,默认值为0.75 )。

is_half确定RVC推理的半精确。是还是错。 (可选,默认值为True )。

f0method -F0提取方法用于此特定调用,覆盖实例默认值:\’rmvpe\’,\’fcpe\’(仅FP32),\’pm\’,\’harvest\’,\’harvest\’,\’dio\’,\’crepe\’。 (可选,默认使用实例设置)。

file_index2 RVC的辅助索引文件的路径。 (可选,默认值为空字符串\"\" )。

filter_radius螺距结果的中值过滤器半径。值> = 3降低呼吸。 (可选,默认值为3 )。

resample_sr样本速率将音频重新采样到RVC之前。 0意味着没有重新采样。 (可选,默认值为0 )。

rms_mix_rate音量信封缩放(0-1)。较低的值模仿原始体积。 (可选,默认值为0.5 )。

protect – 保护无声辅音和呼吸(0-1)。较低的值增加保护。 0.5禁用。 (可选,默认值为0.33 )。

verbose – 启用详细记录以进行RVC转换。 (可选,默认值为False )。

用法的示例

表达文本的一个简单示例:

 from tts_with_rvc import TTS_RVC
from playsound import playsound

tts = TTS_RVC (
    model_path = \"models \\\\ DenVot13800.pth\" ,
    index_path = \"logs \\\\ added_IVF1749_Flat_nprobe_1.index\"
)

tts . set_voice ( \"ru-RU-DmitryNeural\" )
path = tts ( text = \"Привет, мир!\" , pitch = 6 , index_rate = 0.9 )

# Normalize path for playsound if needed (example)
# path = path.replace(\"\\\\\\\\\", \"/\").replace(\"\\\\\",\"/\")

playsound ( path )

文本参数

有一些用于集成问题的文本参数处理器,例如添加GPT模块。

您可以使用TTS_RVC类中的process_args处理它们:

--tts-rate (value) -TTS参数编辑语音速率(降低率的负值和增加速率的正值)

--tts-volume (value) -TTS参数编辑语音量(减少体积的负值和增加体积的正值)似乎由于RVC模块的转换而行不通。

--tts-pitch (value) -TTS参数编辑TTS生成音频的音调(减小音高的负值和增加音高的正值) ,我不建议使用此功能,因为RVC模块具有自己的输出pitch

--rvc-pitch (value) -RVC参数编辑输出音频的音调(减小音高的负值和增加音高的正值)

现在的工作原则:

 from tts_with_rvc import TTS_RVC

tts = TTS_RVC ( model_path = \"models \\\\ YourModel.pth\" )

# This method returns arguments and original text without these text parameters
args , message = tts . process_args ( message )

args变量包含一个具有以下结构的数组:

args[0] -tts速率

args[1] -tts卷

args[2] -tts音高

args[3] -RVC音高

现在,我们准备将其用于生成:

 path = tts ( message , tts_rate = args [ 0 ], 
                    tts_volume = args [ 1 ], 
                    tts_pitch = args [ 2 ],
                    pitch = args [ 3 ])

方法

set_index_path(index_path) – 为语音模型调整更新索引文件的路径。

voiceover_file(path) – 旁白在没有TT的指定路径处的文件。

例外

  1. 名称: NameError: name \'device\' is not defined

确保您的设备支持CUDA,并安装了正确版本的火炬。

  1. RuntimeError: RuntimeError: Failed to load audio: {e}

确保您安装了ffmpeg

致谢

RVC项目 – 用于RVC

执照

麻省理工学院许可证

作者

ATM4X(Artem Dikarev)

下载源码

通过命令行克隆项目:

git clone https://github.com/Atm4x/tts-with-rvc.git

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 编程相关 tts with rvc https://www.zuozi.net/34067.html

arkime
上一篇: arkime
django extra settings
下一篇: django extra settings
常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务