
중국어 | 영어
이 저장소는 UI 프로젝트 유지 보수를 영구적으로 중단했으며 순수한 LIB 프로젝트가됩니다. 코드 저장소 주소는 Dragonianlib이지만 SVC 및 TTS에 대한 릴리스는 여전히이 저장소에서 릴리스됩니다.
이 저장소는 다음과 같습니다. 1. tts (Tacotron2, vits, 감정적, bertvits2, gptsovits); 2. SVC (SovitsSVC, RVC, DiffusionsVC, FishDiffusion, reflowsvc); 3. SVS (Diffsinger) ONNX 프레임 워크 추론 저장소는 현재 C/CPP/C# 호출을 지원합니다.
이 저장소의 최신 버전은 Fish-Speech에 연결되어 있으며 GGML 프레임 워크를 사용하여 Fish-Speech.cpp SubProject를 형성하기 위해 Fish-Speech를 다시 작성합니다.
참고 : SVS 지원 지점 : Moevoicestudio Moevoicestudiocore
CUDA 지원과 관련하여 OnnxRuntime 공식 저장소를 방문하십시오.
실험 후 DML은 ONNX의 일부 지원되지 않는 연산자가 사용될 때 오류를보고하지 않지만 예상치 못한 결과를 반환하여 DMLEP에서 SOVITS3.0 및 SOVITS4.0의 추론 결과에 오류가 발생합니다. 그러나 최신 SOVITS 저장소의 ONNX 내보내기는 이러한 연산자를 대체했으며 SOVITS3.0 및 SOVITS4.0 복구 지원 DML 사용을 지원하지만 ONNX 모델은 최신 (2023/7/17) 버전의 SovitsOnx Export를 사용하여 다시 예거해야합니다.
확산 및 리플 로우 모델의 특성으로 인해, 총 단계의 총 단계가 모델에서 훈련 한 최대 단계 수보다 큰 경우 (실제 단계 횟수 = 총 단계 수/가속 확대 확대는이 총 단계 횟수는 유추하는 동안 취한 실제 단계 수가 아니기 때문에 출력 오디오가 폭발하거나 소음이 발생합니다. 따라서 추론 전에 모델 구성 파일에서 MaxStep (또는 k_step_max)을주의 깊게 관찰하는 것이 좋습니다.
이 프로젝트 는 오픈 소스 및 오프라인 프로젝트이며,이 프로젝트의 모든 개발자 및 관리자 (이하 기고자라고 함)는이 프로젝트를 제어 할 수 없습니다 . 이 프로젝트의 기고자들은 데이터 세트 추출, 데이터 세트 처리, 컴퓨팅 전원 지원, 교육 지원, 추론 등을 포함한 모든 형태의 도움을 모든 조직이나 개인에게 제공 한 적이 없습니다. 이 프로젝트의 기고자는 프로젝트를 사용하는 사용자의 목적을 알거나 알지 못합니다. 따라서이 프로젝트를 기반으로 합성 된 모든 오디오는이 프로젝트의 기고자와 관련이 없습니다. 이로 인한 모든 문제는 사용자 자신의 책임입니다 .
이 프로젝트 자체에는 음성 합성 기능이 없지만 ONNX 모델의 사용자 자체 교육 및 제작을 시작하는 데만 사용됩니다. ONNX 모델의 모델 교육 및 제작은이 프로젝트의 기여자와 관련이 없으며 모든 사용자의 행동입니다. 이 프로젝트의 기고자는 모든 사용자의 모델 교육 및 제작에 참여하지 않았습니다.
이 프로젝트는 완전히 오프라인으로 실행되며 사용자 정보를 수집 할 수 없으며 사용자 입력 데이터를 얻을 수 없습니다. 따라서이 프로젝트의 기고자는 모든 사용자 입력 및 모델을 인식하지 않으므로 사용자 입력에 대해 책임을지지 않습니다.
이 프로젝트는 또한 모델과 함께 제공되지 않으며 2 차 릴리스에 포함 된 모델 과이 프로젝트에 사용 된 모델에는이 프로젝트의 개발자와 관련이 없습니다.
이 프로젝트는 현재 명령 줄 추론 또는 기타 소프트웨어를 구현하기 위해 자체 방법을 호출하는 것을 완전히 지원합니다. 이 프로젝트에 모두 PR을 추천 할 수 있습니다
저자의 다른 프로젝트 : Aitoolkits
개발에 참여하려면 QQ 그룹에 가입하거나 PR을 직접 추가 할 수 있습니다.
모델은 ONNX 모델로 변환해야합니다. 자세한 내용은 선택한 프로젝트의 소스 저장소를 참조하십시오. PTH 모델은 직접 사용할 수 없습니다! ! ! ! ! ! ! ! ! ! ! ! !
이 프로젝트의 각 지점 :
XP 우월 주의자들은 황홀하고 누가 드래곤 걸을 좋아하지 않습니까?
이 프로젝트의 원래 의도는 환경부가 필요하지 않고 다양한 음성 합성 프로젝트의 필요성을 실현하는 것이 었으며 이제는 SVC의 보조 편집기로 만들어 질 계획입니다.
이 프로젝트는 결국 "개인"및 "비전문가"프로젝트이므로 전문 소프트웨어가 많거나 파이썬 CLI 애호가이거나 관련 분야에서 큰 샷입니다. 나는이 소프트웨어가 충분히 전문적이지 않으며 귀하의 요구를 충족시키지 못하거나 심지어 당신에게 쓸모가 없다는 것을 알고 있습니다.
이 프로젝트는 대체 할 수없는 프로젝트가 아닙니다. 반대로, 다양한 도구를 사용 하여이 프로젝트의 기능을 대체 할 수 있습니다. 이 프로젝트가 관련 분야의 주요 프로젝트가 될 것으로 기대하지 않습니다. 나는 열정으로 프로젝트를 계속 개발하고 있습니다. 그러나 열정은 하루 동안 항상 사라질 것이지만, 프로젝트는 내 열정이 완전히 사라질 때까지 유지 보수를 유지할 것을 약속합니다 (사용자 수가 0이더라도 누군가를 사용하는지 여부에 관계없이).
이 프로젝트의 설계에는 다양한 문제가있을 수 있으므로 모든 사람들은 기능을 향상시키기 위해 볶음밥을 적극적으로 주문해야합니다. 나는 기능과 경험의 최적화를 대부분 받아 들일 것입니다.
이 프로젝트는 오픈 소스이며 영원히 무료입니다. 다른 장소 에이 프로젝트의 유료 버전이있는 경우 즉시보고하고 구매하지 마십시오. 이 프로젝트는 영원히 무료입니다. 목요일에 미친 잎으로 하얀 잎을 채우고 싶다면 aifa dian https://afdian.net/a/narusemioshirakana로 갈 수 있습니다.
제공되지 않고 모델을 훈련시키는 것은 비교적 간단하며 헛된 돈을 쓸 필요가 없습니다. 온라인 튜토리얼을 단계별로 따르십시오.
- 독창. 프로젝트 전체에서 자신의 물건의 비율 (AI의 경우 독립적으로 교육을받은 모델을 사용하는 것은 당신에게 속합니다. 다른 사람 인 모델을 사용하는 것은 다른 사람에게 속합니다). 다루는 측면에는 프로그램, 예술, 오디오, 계획 등이 포함되지만 이에 국한되지는 않습니다. 예를 들어, 스킨을 대체하기 위해 Unity 및 기타 엔진 템플릿을 적용하는 것은 전자 폐기물입니다.
- 개발자 태도. 저자의 태도는 돈을 벌고 떠나거나 단순히 헛된 것입니다. 예를 들어, 나는 "국내", "첫 번째", "강한"및 "수제"와 같은 수많은 태그를 쳤으며, 그 결과 저자는 분명히 전자 폐기물 인 프로젝트를 잘 만들 수있는 것을 잘 모릅니다.
- 무단 데이터 세트를 사용하여 훈련 된 AI 모델의 모든 상업적 행동에 반대하십시오.
당신이하고있는 일이 전자 폐기물이 아니라 합법적이고 준수하고 심각한 정치적 실수가 없다는 것을 확신 할 수 있다면, 나는 내 능력 내에서 약간의 기술적 지원을 제공 할 것입니다.
중국 경로는 지원되지 않습니까? 실제로, 프로젝트 온톨로지는 중국 경로를 지원하지만 2023 년 3 월 이전의 OnnxRuntime 버전은 중국 경로를 지원하지 않습니다. 왜냐하면 이러한 버전의 OnnxRuntime은 Win32API의 A- 시리즈 기능을 사용하고 A- 시리즈 기능은 비 분석 경로를 지원하지 않기 때문입니다. 이 문제는 내가 해결할 수있는 것이 아닙니다. Microsoft만이 버그를 수정할 수 있습니다. 다행히 최신 OnnxRuntime은 W 시리즈 기능을 사용하여 중국 경로 문제를 해결합니다.
CUDA의 호환성이 매우 낮기 때문에 프로그램을 설치하고 컴파일 할 때 CUDA 기반 프로그램을 설치하고 컴파일해야합니다. 또는 최신 버전의 CUDA는 수정되지 않았습니다. 이 문제는 Nvidia가 호환성에주의를 기울일 때만 기다릴 수 있습니다.
moevoicestudiocore는 lib 형태로 C ++ 언어로 전화를 제공합니다.
필요에 따라 다음 해당 클래스를 참조하십시오
# include < Modules/Models/header/Tacotron.hpp >
# include < Modules/Models/header/Vits.hpp >
# include < Modules/Models/header/VitsSvc.hpp >
# include < Modules/Models/header/DiffSvc.hpp >
# include < Modules/Models/header/DiffSinger.hpp >
InferClass::Tacotron2;
InferClass::Vits;
InferClass::VitsSvc;
InferClass::DiffusionSvc;
InferClass::DiffusionSinger;
/*
构造函数第一个是配置文件json
第二个是进度条回调
第三个是参数回调 (若为TTS 此参数为空即可)
第四个参数为设备
使用调用Inference函数即可
*/모델 구성은 #Model 구성을 참조하십시오
데모 : RVC 명령 줄 예제
업데이트 중지 (다운로드 및 업로드 속도로 인해) : COBODER & HIDDENUNITBERT
업데이트 중지 (포옹 페이스가 벽으로 이어져 있기 때문에) : Huggingface
최신 창고 : Openi
사전 설정을 직접 내보내십시오.
input_names ["source"] 여야합니다. output_names 는 ["embed"] , dynamic_axes 는 {"source":[0,2],} 이어야합니다.input_names ["c","f0"] 여야합니다. output_names ["audio"] 여야합니다. dynamic_axes 는 {"c":[0,1],"f0":[0,1],} 이어야합니다.input_names 사용하는 hifigan은 ["x"] 여야합니다. output_names ["audio"] 여야합니다. dynamic_axes {"x":[0,1],} 이어야합니다.VEC 모델 및 Hubert 모델은 Hubert 폴더에 배치되며 Hifigan 모델은 Hifigan 폴더에 배치됩니다. FCPE 또는 RMVPE의 두 F0 예측기를 사용해야하는 경우 루트 디렉토리에 F0PREDICTOR 폴더를 작성하고 ONNX 모델을 배치해야합니다.
xxx.json 은 모델의 구성 파일입니다. 템플릿에 따라 작성해야하며 동시에 모델을 Onnx 직접 변환해야합니다. Folder : 모델의 폴더 이름을 저장합니다Name : UI에서 모델의 표시 이름Type : 모델 카테고리Rate : 샘플링 속도 (훈련 시점과 정확히 동일해야합니다. 이유를 이해하지 못하면 컴퓨터 오디오 관련 지식을 배우는 것이 좋습니다). {
"Folder" : "Atri" ,
"Name" : "亚托莉-Tacotron2" ,
"Type" : "Tacotron2" ,
"Rate" : 22050 ,
"Symbol" : "_-!'(),.:;? ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" ,
"Cleaner" : "" ,
"AddBlank" : false ,
"Hifigan" : "hifigan"
}
//Symbol:模型的Symbol,不知道Symbol是啥的建议多看几个视频了解了解TTS的基础知识,这一项在Tacotron2中必须填。
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hifigan:Hifigan模型名,必须填且必须将在前置模型中下载到的hifigan放置到hifigan文件夹
//AddBlank:是否在音素之间插0作为分隔 {
"Folder" : "SummerPockets" ,
"Name" : "SummerPocketsReflectionBlue" ,
"Type" : "Vits" ,
"Rate" : 22050 ,
"Symbol" : "_,.!?-~…AEINOQUabdefghijkmnoprstuvwyzʃʧʦ↓↑ " ,
"Cleaner" : "" ,
"AddBlank" : true ,
"Emotional" : true ,
"EmotionalPath" : "all_emotions" ,
"Characters" : [ "鳴瀬しろは" , "空門蒼" , "鷹原うみ" , "紬ヴェンダース" , "神山識" , "水織静久" , "野村美希" , "久島鴎" , "岬鏡子" ]
}
//Symbol:模型的Symbol,不知道Symbol是啥的建议多看几个视频了解了解TTS的基础知识,这一项在Vits中必须填。
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//AddBlank:是否在音素之间插0作为分隔(大多数Vits模型必须为true)
//Emotional:是否加入情感向量
//EmotionalPath:情感向量npy文件名 {
"Folder" : "SummerPockets" ,
"Name" : "SummerPocketsReflectionBlue" ,
"Type" : "Pits" ,
"Rate" : 22050 ,
"Symbol" : "_,.!?-~…AEINOQUabdefghijkmnoprstuvwyzʃʧʦ↓↑ " ,
"Cleaner" : "" ,
"AddBlank" : true ,
"Emotional" : true ,
"EmotionalPath" : "all_emotions" ,
"Characters" : [ "鳴瀬しろは" , "空門蒼" , "鷹原うみ" , "紬ヴェンダース" , "神山識" , "水織静久" , "野村美希" , "久島鴎" , "岬鏡子" ]
}
//Symbol:模型的Symbol,不知道Symbol是啥的建议多看几个视频了解了解TTS的基础知识,这一项在Vits中必须填。
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//AddBlank:是否在音素之间插0作为分隔(大多数Pits模型必须为true)
//Emotional:是否加入情感向量
//EmotionalPath:情感向量npy文件名 {
"Folder" : "NyaruTaffy" ,
"Name" : "NyaruTaffy" ,
"Type" : "RVC" ,
"Rate" : 40000 ,
"Hop" : 320 ,
"Cleaner" : "" ,
"Hubert" : "hubert4.0" ,
"Diffusion" : false ,
"CharaMix" : true ,
"Volume" : false ,
"SoVits2" : true ,
"ShallowDiffusion" : "NyaruTaffy"
"HiddenSize" : 256 ,
"Cluster" : "Index"
"Characters" : [ "Taffy" , "Nyaru" ]
}
//Hop:模型的HopLength,不知道HopLength是啥的建议多看几个视频了解了解音频的基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hubert:Hubert模型名,必须填且必须将在前置模型中下载到的Hubert放置到Hubert文件夹
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//Diffusion:是否为DDSP仓库下的扩散模型
//CharaMix:是否使用角色混合轨道
//ShallowDiffusion:SoVits浅扩散模型,须填写ShallowDiffusion模型配置文件名(不带后缀和完整路径),小显存或内存下速度巨慢,效果未知,请根据实际情况决定是否使用)
//Volume:该模型是否有音量Emb
//HiddenSize:Vec模型的尺寸(768/256)
//Cluster:聚类类型,包括"KMeans"和"Index",KMeans需要前往SoVits仓库将KMeans文件导出为可用格式,放置到模型文件夹;Index同理,需要前往SoVits仓库导出为可用格式(如果是RVC的单角色Index只需要改名为Index-0.index)然后放置到模型文件夹下(有几个角色就有几个Index文件) {
"Folder" : "NyaruTaffySo" ,
"Name" : "NyaruTaffy-SoVits" ,
"Type" : "SoVits" ,
"Rate" : 32000 ,
"Hop" : 320 ,
"Cleaner" : "" ,
"Hubert" : "hubert" ,
"SoVits3" : true ,
"ShallowDiffusion" : "NyaruTaffy"
"Diffusion" : false ,
"CharaMix" : true ,
"Volume" : false ,
"HiddenSize" : 256 ,
"Cluster" : "KMeans"
"Characters" : [ "Taffy" , "Nyaru" ]
}
//Hop:模型的HopLength,不知道HopLength是啥的建议多看几个视频了解了解音频的基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hubert:Hubert模型名,必须填且必须将在前置模型中下载到的Hubert放置到Hubert文件夹
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//Diffusion:是否为DDSP仓库下的扩散模型
//ShallowDiffusion:SoVits浅扩散模型,须填写ShallowDiffusion模型配置文件名(不带后缀和完整路径),小显存或内存下速度巨慢,效果未知,请根据实际情况决定是否使用)
//CharaMix:是否使用角色混合轨道
//Volume:该模型是否有音量Emb
//HiddenSize:Vec模型的尺寸(768/256)
//Cluster:聚类类型,包括"KMeans"和"Index",KMeans需要前往SoVits仓库将KMeans文件导出为可用格式,放置到模型文件夹;Index同理,需要前往SoVits仓库导出为可用格式(如果是RVC的单角色Index只需要改名为Index-0.index)然后放置到模型文件夹下(有几个角色就有几个Index文件) {
"Folder" : "NyaruTaffySo" ,
"Name" : "NyaruTaffy-SoVits" ,
"Type" : "SoVits" ,
"Rate" : 48000 ,
"Hop" : 320 ,
"Cleaner" : "" ,
"Hubert" : "hubert" ,
"SoVits3" : true ,
"ShallowDiffusion" : "NyaruTaffy"
"Diffusion" : false ,
"CharaMix" : true ,
"Volume" : false ,
"HiddenSize" : 256 ,
"Cluster" : "KMeans"
"Characters" : [ "Taffy" , "Nyaru" ]
}
//Hop:模型的HopLength,不知道HopLength是啥的建议多看几个视频了解了解音频的基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hubert:Hubert模型名,必须填且必须将在前置模型中下载到的Hubert放置到Hubert文件夹
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//Diffusion:是否为DDSP仓库下的扩散模型
//ShallowDiffusion:SoVits浅扩散模型,须填写ShallowDiffusion模型配置文件名(不带后缀和完整路径),小显存或内存下速度巨慢,效果未知,请根据实际情况决定是否使用)
//CharaMix:是否使用角色混合轨道
//Volume:该模型是否有音量Emb
//HiddenSize:Vec模型的尺寸(768/256)
//Cluster:聚类类型,包括"KMeans"和"Index",KMeans需要前往SoVits仓库将KMeans文件导出为可用格式,放置到模型文件夹;Index同理,需要前往SoVits仓库导出为可用格式(如果是RVC的单角色Index只需要改名为Index-0.index)然后放置到模型文件夹下(有几个角色就有几个Index文件) {
"Folder" : "NyaruTaffySo" ,
"Name" : "NyaruTaffy-SoVits" ,
"Type" : "SoVits" ,
"Rate" : 44100 ,
"Hop" : 512 ,
"Cleaner" : "" ,
"Hubert" : "hubert4.0" ,
"SoVits4.0V2" : false ,
"ShallowDiffusion" : "NyaruTaffy"
"Diffusion" : false ,
"CharaMix" : true ,
"Volume" : false ,
"HiddenSize" : 256 ,
"Cluster" : "KMeans"
"Characters" : [ "Taffy" , "Nyaru" ]
}
//Hop:模型的HopLength,不知道HopLength是啥的建议多看几个视频了解了解音频的基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hubert:Hubert模型名,必须填且必须将在前置模型中下载到的Hubert放置到Hubert文件夹
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//Diffusion:是否为DDSP仓库下的扩散模型
//ShallowDiffusion:SoVits浅扩散模型,须填写ShallowDiffusion模型配置文件名(不带后缀和完整路径),小显存或内存下速度巨慢,效果未知,请根据实际情况决定是否使用)
//CharaMix:是否使用角色混合轨道
//Volume:该模型是否有音量Emb
//HiddenSize:Vec模型的尺寸(768/256)
//Cluster:聚类类型,包括"KMeans"和"Index",KMeans需要前往SoVits仓库将KMeans文件导出为可用格式,放置到模型文件夹;Index同理,需要前往SoVits仓库导出为可用格式(如果是RVC的单角色Index只需要改名为Index-0.index)然后放置到模型文件夹下(有几个角色就有几个Index文件)
//SoVits4.0V2: 是否为SoVits4.0V2模型 {
"Folder" : "DiffShiroha" ,
"Name" : "白羽" ,
"Type" : "DiffSvc" ,
"Rate" : 44100 ,
"Hop" : 512 ,
"MelBins" : 128 ,
"Cleaner" : "" ,
"Hifigan" : "nsf_hifigan" ,
"Hubert" : "hubert" ,
"Characters" : [ ] ,
"Pndm" : 100 ,
"Diffusion" : false ,
"CharaMix" : true ,
"Volume" : false ,
"HiddenSize" : 256 ,
"V2" : true
}
//Hop:模型的HopLength,不知道HopLength是啥的建议多看几个视频了解了解音频的基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//MelBins:模型的MelBins,不知道MelBins是啥的建议多看几个视频了解了解梅尔基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hubert:Hubert模型名,必须填且必须将在前置模型中下载到的Hubert放置到Hubert文件夹
//Hifigan:Hifigan模型名,必须填且必须将在前置模型中下载到的nsf_hifigan放置到hifigan文件夹
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//Pndm:加速倍数,如果是V1模型则必填且必须为导出时设置的加速倍率
//V2:是否为V2模型,V2模型就是后来我分4个模块导出的那个
//Diffusion:是否为DDSP仓库下的扩散模型
//CharaMix:是否使用角色混合轨道
//Volume:该模型是否有音量Emb
//HiddenSize:Vec模型的尺寸(768/256) {
"Folder" : "utagoe" ,
"Name" : "utagoe" ,
"Type" : "DiffSinger" ,
"Rate" : 44100 ,
"Hop" : 512 ,
"Cleaner" : "" ,
"Hifigan" : "singer_nsf_hifigan" ,
"Characters" : [ ] ,
"MelBins" : 128
}
//Hop:模型的HopLength,不知道HopLength是啥的建议多看几个视频了解了解音频的基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到)
//Cleaner:插件名,可以不填,填了就必须要在Cleaner文件夹防止相应的CleanerDll,如果Dll不存在或者是Dll内部有问题,则会在加载模型时报插件错误
//Hifigan:Hifigan模型名,必须填且必须将在前置模型中下载到的singer_nsf_hifigan放置到hifigan文件夹
//Characters:如果是多角色模型必须填写为你的角色名称组成的列表,如果是单角色模型可以不填
//MelBins:模型的MelBins,不知道MelBins是啥的建议多看几个视频了解了解梅尔基础知识,这一项在SoVits中必须填。(数值必须为你训练时的数值,可以在你训练模型时候的配置文件里看到) {
"Folder" : "HimenoSena" ,
"Name" : "HimenoSena" ,
"Type" : "BertVits" ,
"Symbol" : [
"_" ,
"AA" ,
"E" ,
"EE" ,
"En" ,
"N" ,
"OO" ,
"V" ,
"a" ,
"a:" ,
"aa" ,
"ae" ,
"ah" ,
"ai" ,
"an" ,
"ang" ,
"ao" ,
"aw" ,
"ay" ,
"b" ,
"by" ,
"c" ,
"ch" ,
"d" ,
"dh" ,
"dy" ,
"e" ,
"e:" ,
"eh" ,
"ei" ,
"en" ,
"eng" ,
"er" ,
"ey" ,
"f" ,
"g" ,
"gy" ,
"h" ,
"hh" ,
"hy" ,
"i" ,
"i0" ,
"i:" ,
"ia" ,
"ian" ,
"iang" ,
"iao" ,
"ie" ,
"ih" ,
"in" ,
"ing" ,
"iong" ,
"ir" ,
"iu" ,
"iy" ,
"j" ,
"jh" ,
"k" ,
"ky" ,
"l" ,
"m" ,
"my" ,
"n" ,
"ng" ,
"ny" ,
"o" ,
"o:" ,
"ong" ,
"ou" ,
"ow" ,
"oy" ,
"p" ,
"py" ,
"q" ,
"r" ,
"ry" ,
"s" ,
"sh" ,
"t" ,
"th" ,
"ts" ,
"ty" ,
"u" ,
"u:" ,
"ua" ,
"uai" ,
"uan" ,
"uang" ,
"uh" ,
"ui" ,
"un" ,
"uo" ,
"uw" ,
"v" ,
"van" ,
"ve" ,
"vn" ,
"w" ,
"x" ,
"y" ,
"z" ,
"zh" ,
"zy" ,
"!" ,
"?" ,
"u2026" ,
"," ,
"." ,
"'" ,
"-" ,
"SP" ,
"UNK"
] ,
"Cleaner" : "" ,
"Rate" : 44100 ,
"CharaMix" : true ,
"Characters" : [
"u56fdu89c1u83dcu5b50" ,
"u59ecu91ceu661fu594f" ,
"u65b0u5802u5f69u97f3" ,
"u56dbu6761u51dbu9999" ,
"u5c0fu97a0u7531u4f9d"
] ,
"LanguageMap" : {
"ZH" : [
0 ,
0
] ,
"JP" : [
1 ,
6
] ,
"EN" : [
2 ,
8
]
} ,
"Dict" : "BasicDict" ,
"BertPath" : [
"chinese-roberta-wwm-ext-large" ,
"deberta-v2-large-japanese" ,
"bert-base-japanese-v3"
]
} // ${xxx}是什么意思大家应该都知道吧,总之以下是多个不同项目需要的模型文件(需要放置在对应的模型文件夹下)。
// Tacotron2:
${Folder} _decoder_iter.onnx
${Folder} _encoder.onnx
${Folder} _postnet.onnx
// Vits: 单角色VITS
${Folder} _dec.onnx
${Folder} _flow.onnx
${Folder} _enc_p.onnx
${Folder} _dp.onnx
// Vits: 多角色VITS
${Folder} _dec.onnx
${Folder} _emb.onnx
${Folder} _flow.onnx
${Folder} _enc_p.onnx
${Folder} _dp.onnx
// SoVits:
${Folder} _SoVits.onnx
// RVC:
${Folder} _RVC.onnx
// DiffSvc:
${Folder} _diffSvc.onnx
// DiffSvc: V2
${Folder} _encoder.onnx
${Folder} _denoise.onnx
${Folder} _pred.onnx
${Folder} _after.onnx
// DiffSinger: OpenVpiVersion
${Folder} _diffSinger.onnx
// DiffSinger:
${Folder} _encoder.onnx
${Folder} _denoise.onnx
${Folder} _pred.onnx
${Folder} _after.onnx例如:_-!'(),.:;? ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
打开你训练模型的项目,打开textsymbol.py,如图按照划线的List顺序将上面的4个字符串连接即可

/*
Cleaner请放置于根目录的Cleaners文件夹内,应该是一个按照要求定义的动态库(.dll),dll应当命名为Cleaner名,Cleaner名即为模型定义Json文件中Cleaner一栏填写的内容。
所有的插件dll需要定义以下函数,函数名必须为PluginMain,Dll名必须为插件名(或Cleaner名):
*/
const wchar_t * PluginMain ( const wchar_t *);
// 该接口只要求输入输出一致,并不要求功能一致,也就是说,你可以在改Dll中实现任何想要的功能,比方说ChatGpt,机器翻译等等。
// 以ChatGpt为例,PluginMain函数传入了一个输入字符串input,将该输入传入ChatGpt,再将ChatGpt的输出传入PluginMain,最后返回输出。
wchar_t * PluginMain ( wchar_t * input){
wchar_t * tmpOutput = ChatGpt (input);
return Clean (tmpOutput);
}
// 注意:导出dll时请使用 extern "C" 关键字来防止C++语言的破坏性命名。 git clone https: // github.com/NaruseMioShirakana/MoeVoiceStudio.git
//自行配置OnnxRuntime和FFMPEG的Dll
//使用VisualStudio构建어떤 조직이나 개인도 정보 기술을 비방, 명예 훼손 또는 정보 기술을 사용하여 다른 사람의 초상화 권리를 침해 할 수 없습니다. 초상화 오른쪽 보유자의 초상화는 법에 의해 달리 규정 된 경우를 제외하고는 초상화 권리 홀더의 동의없이 제작, 사용 또는 공개되어서는 안됩니다. 초상화 오른쪽 보유자의 동의없이, 초상화 작업의 올바른 보유자는 출판, 복사, 발행, 임대, 전시회 등을 통해 초상화 오른쪽 보유자의 초상화를 사용하거나 공개하지 않아야합니다.
[평판 권리] 민사 피험자들은 평판을 누릴 권리를 누립니다. 어떤 조직이나 개인도 모욕, 비방 또는 기타 수단으로 다른 사람의 평판을 침해 할 수 없습니다.
[평판 권을 침해하는 작품] 가해자가 발표 한 문학적 및 예술 작품이 실제 사람들이나 특정 사람들이 묘사하고 다른 사람의 평판 권리를 침해하는 모욕적 인 내용을 포함하는 경우, 피해자는 가해자에게 법에 따라 민사 책임을 부여 할 권리가 있습니다. 가해자가 출판 한 문학 및 예술 작품은 특정 사람을 설명의 대상으로 묘사하지 않으며, 음모가 특정 사람의 상황과 유사한 경우에만 민사 책임을 지어서는 안됩니다.
Moess가 사용하는 이미지 자료는 다음과 같습니다.
저소득을 판단하는 기준은 다음과 같습니다. 많은 AI를 사용하여 생성 된 모든 내용, 원래 콘텐츠는 낮고 의미는 알려지지 않았으며 내용은 품질이 낮습니다.
E- 스팸 판단 기준 : 1. 독창성. 프로젝트 전체에서 자신의 물건의 비율 (AI의 경우 독립적으로 교육을받은 모델을 사용하는 것은 당신에게 속합니다. 다른 사람 인 모델을 사용하는 것은 다른 사람에게 속합니다). 다루는 측면에는 프로그램, 예술, 오디오, 계획 등이 포함되지만 이에 국한되지는 않습니다. 예를 들어, 스킨을 대체하기 위해 Unity 및 기타 엔진 템플릿을 적용하는 것은 전자 폐기물입니다. ↩