赞
踩
通过以下链接,新用户注册登录 OpenBayes , 即可获得 四个小时 RTX 4090免费使用时长 !!
注册链接:注册 - OpenBayes
模型训练=》创建容器=》填写容器名称=》下一步
选择一台4090,2.1-gpu,python-3.10,cudu-12.1,然后执行
容器启动以后安装依赖
首先下载ChatTTS,执行以下命令
git clone https://github.com/2noise/ChatTTS.git
然后安装依赖
首先进入chattts下载好的文件夹
cd ChatTTS
然后执行
- pip install -r requirements.txt
- pip install gradio
- pip install pynini==2.1.5 WeTextProcessing
都安装完成就可以编写脚本了
在下载好的ChatTTS的项目里面创建一个test.py文件
然后输入以下代码
解释一下每行代码
首先导入chattts,然后加载模型
接着调用模型生成文本的音频
最后播放生成的音频
- import ChatTTS
- from IPython.display import Audio
- import torchaudio
- import torch
-
- # 需要生成的文本
- text = '四川美食确实以辣闻名,但也有不辣的选择。比如甜水面、赖汤圆、蛋烘糕、叶儿粑等,这些小吃口味温和,甜而不腻,也很受欢迎。
- 我抬头一看,WPS稻壳会员,我说我可能没那技术,领导就开骂了:你老说你会一点会一点,没想到这么简单的活都干不了,你叫技术的来一趟吧。'
- # 随机度
- temperature = .3
- top_P = .7
- top_K = 20
- # 音色的随机值,不同值代表不同的音色
- audio_seed_input = 2
- # 文本重写的随机值,不同的值代表不同的风格
- text_seed_input = 42
- # 是否重新断句、重写文本
- refine_text_flag = True
- chat = ChatTTS.Chat()
- chat.load_models()
- torch.manual_seed(audio_seed_input)
- rand_spk = chat.sample_random_speaker()
- params_infer_code = {
- 'spk_emb': rand_spk,
- 'temperature': temperature,
- 'top_P': top_P,
- 'top_K': top_K,
- }
- params_refine_text = {'prompt': '[oral_2][laugh_0][break_6]'}
-
- torch.manual_seed(text_seed_input)
- #重写文本
- if refine_text_flag:
- text = chat.infer(text,
- skip_refine_text=False,
- refine_text_only=True,
- params_refine_text=params_refine_text,
- params_infer_code=params_infer_code
- )
-
- wavs = chat.infer(text,
- skip_refine_text=True,
- params_refine_text=params_refine_text,
- params_infer_code=params_infer_code
- )
-
- torchaudio.save("output1.wav", torch.from_numpy(wavs[0]), 24000)
- # 播放生成的音频
- Audio(wavs[0], rate=24_000, autoplay=True)
上面的代码就可以生成一个30多S的音频文件了
在环境配好的情况下,调用ChatTTS还是很容易的。而OpenBayes提供了一个基础的配置环境,开箱即用,就目前使用来看,个人体验很友好。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。