2023-03-22 22:16:23 来源:哔哩哔哩
复现模型:https://github.com/PlayVoice/so-vits-svc
(资料图)
训练后得到的模型:https://pan.baidu.com/s/1rDBiX496T6irnMgK8ZBxjg?pwd=9r41 提取码:9r41
这篇文章可能适合什么读者:对sovits的复现感兴趣,但本地设备显卡算力不足,打算通过autodl等平台租借显卡,在anaconda+linuxs平台上复现sovits4.0的读者。(虽然后文也有涉及一点win系统上复现可能出现问题)
以下内容视作读者具备基本的代码复现知识,不过如果阅读中有不理解的地方或者问题欢迎私信与我讨论,也欢迎喜欢ai技术和nijisanji的各位在评论区交流心得。
笔者的复现平台:linuxs系统+anaconda。显卡是3090 cuda=11.6 显存24g
torch的版本我选用:pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu116。这里建议大伙选用符合你自己设备cuda版本的torch,把我这段的最后几个数字改成你的cuda版本即可,不清楚自己的cuda版本可以用nvidia-smi指令查看。cuda一般是向上兼容的。
py我选用python=3.8
其他环境配置参照github文档中的requirements.txt,不过不建议直接pip install -r requirements.txt,因为pyworld的安装需要在先安装好torch的基础之上。实际运行过程中发现requirements文档也不太完整,可能还需要补充pip install一些东西,比如pip install librosa=0.8.0(如果最新版本或过早版本都会导致问题),tensorboard,另外starlette我用的也是0.26.1,因为报错冲突了
linuxs系统直接pip install pyaudio可能出错。因为在安装PyAudio之前需要先安装pyproject.toml-based projects,方法如下:
yes|sudo apt-get install portaudio19-dev
yes|sudo apt-get install python3-all-dev
pip install pyaudio
(参考自:https://blog.csdn.net/weixin_38369492/article/details/125992255。在sudo之前补充了yes|以免确认)
执行时preprocess_hubert_f0.py,如果出现no moudle found 'parselmouth'或者在parselmouth的安装中报错,请pip install praat-parselmouth
dataset raw/ 中的语音文件必须为wav格式否则无法进行预处理,建议选用每条长度为6秒的主播的无背景噪音且音色清晰的语音60条-100条(此处参考https://github.com/SUC-DriverOld/so-vits-svc-Chinese-Detaild-Documents)。推荐的方法是下载一段主播的无背景音杂谈,然后用剪切工具如“音频编辑专家”等分成几秒的小片段
我猜想加入一些消除bgm的歌回或是歌曲可以提高生成效果,有待验证
和本文无关不过顺口一提我个人pip install比较喜欢用pypi源(即pip install (moudle name ) -i http://pypi.douban.com/simple --trusted-host pypi.douban.com)
有关人声和背景音乐的分离,我一开始用到的网站是https://www.media.io/zh/vocal-remover.html,每日非会员可以进行10次100m以内的人声分离(考虑到网站分离长音频容易崩建议每次放进去的音频不要过长),输出时也可以以wav格式输出。另外一种方法是下载ultimate vocal remover (链接:https://github.com/Anjok07/ultimatevocalremovergui),这个程序的人声分离性能很好但是体积不小(4g)且分离时烧cpu。快速分离可用前一种方法,追求效果可用后者方法。
windows系统下开始训练时如果出现报错RuntimeError: Distributed package doesn't have NCCL built in,请将train.py第60行的dist.init_process_group(backend='nccl', init_method='env://', world_size=n_gpus, rank=rank)改为dist.init_process_group(backend="gloo", init_method='env://', world_size=n_gpus, rank=rank)
开始训练时如果出现爆显存(error: cuda out of memory),建议调小batch_size,通过修改configs文件夹下的configs文件内batch_size后跟的那个值来调整(没有ide的话就用记事本打开就可以改),默认为12,我24g显存的3090是可以满足。8g显存的设备可以考虑batch_size调为4。
进行推理时如果爆显存,可以尝试增大slice_db,如果依旧存在问题可以将要推理的raw分段
后续想到啥再补充
标签:
- 加快虚拟仿真实训基地建设 启动职业学校信息化建设试点很必要
- “双减”后如何在满足学生多样需求方面做“加法”?
- 处于生理活跃期且心理发展不成熟 高校开设公共卫生必修课很必要
- 价格低于相应蔬菜零售价 西安投放约1万吨政府储备蔬菜
- 深受年轻消费群体所青睐 国潮风商品成为年货新选择
知识
- 他把银行卡卖给骗子,“黑吃黑”“截胡”十万元
- “老司机”4S店试驾豪车 结果油门当刹车撞了
- 新开工改造城镇老旧小区5.34万个
- 发动巡河志愿者2万余名 “用心护好每一条河”
- 假客服的套路:伪装成大平台客服,层层布局引人上钩
人物
- 浙江两轮核酸检测结果均为阴性 无新增本土阳性感染者
- 新疆阿克苏地区库车市发生4.1级地震 震源深度18千米
- 抵返哈尔滨人员须持48小时内核酸检测阴性证明
- 浙大紫金港校区已解封 有7337人有序离开该校区
- 2021年广东省第七届风筝锦标赛落幕
- 黑龙江讷河市启动全员核酸检测 目前讷河市全员核酸检测结果均为阴性
- 【同心粤港澳 携手大湾区】南头古城,搭建深港澳三地文化创意活动交流平台
- 重庆入河排污口整治工作推进至全市26个区县
- 四川省第二批政法队伍教育整顿:立案审查调查省级政法机关干警58人
- 长三角区域生态环境部门“云签约”长江大保护倡议书
- 古老长城重焕新生机
- 藏不住了!你同事里有许多“武林高手”……
- 浙江杭州2例无症状感染者系感染德尔塔变异株
- 喜马拉雅的深情和誓言
- 浪漫之城打造山海城一体新地标
- 让老年人更适应数字生活
- 内蒙古通辽市新增1例本土确诊病例、1例无症状感染者
- 徐州无新增确诊病例 核酸检测55515人结果均为阴性
- 甘肃培树“农家巧娘”增技能:返乡创业掌勺又“掌柜”
- 内蒙古通辽市科尔沁区一地调整为中风险地区
- 上海本轮疫情涉及闭环管理的医疗机构全面恢复门急诊
- 青年学生成艾滋病感染高发人群 “社会疫苗”如何打?
- 内蒙古满洲里新增本土确诊病例1例 当地开展第二轮大规模核酸检测
- 江西无新增本土确诊病例 上饶全面恢复正常生产生活秩序
- 中老铁路上会四国语言的列车长:用心维护中老友谊的桥梁
- 海南首次发现有环志的世界极危鸟种勺嘴鹬
- 一场“网络劝生者”和“网络劝死者”的战役
- 内蒙古通辽新增本土确诊和无症状感染者各1例 轨迹公布
- 江西中烟工业有限责任公司原总经理姚庆艳接受审查调查
- 宁夏45例新冠肺炎确诊病例均已治愈出院
- 内蒙古通辽市科尔沁区发现2名初筛阳性人员
- 生活在闹钟里的丈夫:自己迟一秒,渐冻症妻子就会多一分疼
- 辽宁新冠肺炎确诊病例零新增
- 11月28日16-24时,内蒙古新增本土确诊病例1例
- 奥密克戎毒株为何“需要关注”?现有防疫工具还有效吗?
- 黑龙江新增本土无症状感染者1例
- 这辈子一定要去趟这个公园 在这里“有种爱叫放手”
- 那年今日 | 一张漫画涨知识之11月29日
- 寒潮预警!我国中东部迎大范围降温 黑龙江等地降幅可达12℃
- 冷空气继续影响我国中东部 华北黄淮等地有雾和霾天气