
Китайский | Английский
Этот репозиторий навсегда прекратил поддерживать проект пользовательского интерфейса и станет чистым либеральным проектом. Адрес репозитория кода: Dragonianlib, но в этом репозитории все еще выпускается релиз о SVC и TTS.
Этот репозиторий: 1. TTS (Tacotron2, Vits, Emotionalvits, Bertvits2, GptSovits); 2. SVC (Sovitssvc, RVC, Diffusionsvc, Fishdiffusion, Reflowowsvc); 3. SVS (Diffsinger) Onnx Framework Repository, в настоящее время поддерживает вызовы C/CPP/C#.
Последняя версия этого хранилища была связана с речью о рыбе и использует рамки GGML, чтобы переписать речь рыбы, чтобы сформировать подпроект Fish.cpp.
ПРИМЕЧАНИЕ: SVS с поддержкой: Moevoicestudio moevoicestudiocore
Что касается поддержки CUDA, пожалуйста, посетите официальный репозиторий Onnxruntime.
После экспериментов DML приведет к тому, что некоторые неподдерживаемые операторы в ONNX не сообщают об ошибках при использовании, но вернет неожиданный результат, что приведет к ошибкам в результатах вывода Sovits3.0 и Sovits4.0 на DMLEP. Тем не менее, экспорт ONNX в последнем хранилище Sovits заменил эти операторы, поэтому Sovits3.0 и Sovits4.0 поддержка поддержки DML-поддержки DML, но модель ONNX должна быть реэкспортирована с использованием последней версии Export Sovitsonnx (2023/7/17).
Из -за характеристик моделей диффузии и рефтова, если общее количество шагов, которые вы выводите, больше, чем максимальное количество шагов, которые вы подготовили в модели (фактическое количество шагов = общее количество шагов/увеличение ускорения, это общее количество шагов не является фактическим количеством шагов, которые вы предпринимали во время вывода, но K_STEP), которое вызовет выходной аудиосионе. Поэтому рекомендуется тщательно наблюдать за MAXSTEP (или k_step_max) в файле конфигурации модели до вывода.
Этот проект является проектом с открытым исходным кодом и офлайн, и все разработчики и сопровождающие этого проекта (далее называемый участниками) не контролируют этот проект . Вкладчики этого проекта никогда не предоставляли ни одной организации или человека со всеми формами помощи, включая, но не ограничивались извлечением набора данных, обработкой набора данных, поддержкой вычислительной поддержки, поддержкой обучения, рассуждениям и т. Д.; Вкладчики этого проекта не знают и не знают цели пользователя, использующего проект. Таким образом, все аудио, синтезированные на основе этого проекта, не имеют ничего общего с участниками этого проекта. Все проблемы, вызванные этим, несут собственную ответственность пользователя .
Сам этот проект не имеет никакой функции синтеза речи, но используется только для запуска собственного обучения пользователя и производства модели ONNX. Обучение модели и производство модели ONNX не связаны с участниками этого проекта и являются собственным поведением пользователей. Вкладчики этого проекта не участвовали в модельной подготовке и производстве всех пользователей.
Этот проект запускается полностью в автономном режиме и не может собирать какую -либо пользовательскую информацию и не может получить пользовательские входные данные. Следовательно, участники этого проекта не знают обо всех пользовательских входах и моделях, поэтому они не несут ответственности за какой -либо пользовательский ввод.
Этот проект также не имеет никакой модели, и любая модель, включенная в вторичное выпуск, и модель, используемая для этого проекта, не имеет ничего общего с разработчиком этого проекта.
В настоящее время этот проект полностью поддерживает вызов своих собственных методов для реализации рассуждений командной строки или другого программного обеспечения. Все могут порекомендовать PR этому проекту
Другие проекты автора: aitoolkits
Если вы хотите участвовать в разработке, вы можете присоединиться к группе QQ: 263805400 или напрямую добавить PR
Модель должна быть преобразована в модель ONNX. Для получения подробной информации см. Репозиторий источника выбранного вами проекта. Модель PTH не может быть использована напрямую! ! ! ! ! ! ! ! ! ! ! ! !
Каждая филиал этого проекта:
XP Suprecriats - это в восторге, кому не нравится Dragon Girl?
Первоначальное намерение этого проекта состояло в том, чтобы реализовать необходимость различных проектов синтеза голоса без необходимости в Министерстве окружающей среды, и теперь он планируется быть сделанным в качестве вспомогательного редактора SVC.
Поскольку этот проект является «личным» и «непрофессиональным» проектом в конце концов, у вас есть больше профессионального программного обеспечения, или вы являетесь энтузиастом Python CLI, или вы являетесь большим выстрелом в связанной области. Я знаю, что это программное обеспечение недостаточно профессионально и, вероятно, не удовлетворит ваши потребности или даже бесполезно для вас.
Этот проект не является незаменимым проектом. Напротив, вы можете использовать различные инструменты для замены функций этого проекта. Я не ожидаю, что этот проект станет ведущим проектом в смежных областях. Я просто продолжаю развивать проект с энтузиазмом. Но энтузиазм всегда исчезает в течение дня, но проект обещает сохранить техническое обслуживание, пока мой энтузиазм полностью не исчезнет (независимо от того, использует ли кто -нибудь его, даже если количество пользователей составляет 0) 0)
В разработке этого проекта могут возникнуть различные проблемы, поэтому каждый также должен активно заказать жареный рис, чтобы помочь мне улучшить функции. Я приму большую часть оптимизации функций и опыта.
Этот проект с открытым исходным кодом и бесплатный навсегда. Если в других местах есть платная версия этого проекта, пожалуйста, сообщите о нем немедленно и не покупайте его. Этот проект бесплатный навсегда. Если вы хотите заполнить белые листья сумасшедшим четверг, вы можете пойти в Aifa Dian https://afdian.net/a/narusemioshirakana
Это не предоставлено, обучение модели относительно проста, и нет необходимости тратить деньги напрасно. Просто следуйте онлайн -обучению шаг за шагом.
- Оригинальность. Доля ваших собственных вещей на протяжении всего проекта (для ИИ создание использования моделей, которые полностью обучены вами независимо, принадлежит вам; создание использования моделей, которые являются другими, принадлежит другим). Охватываемые аспекты включают, но не ограничиваются программами, искусством, аудио, планированием и т. Д.
- Отношение разработчика. Отношение автора состоит в том, чтобы заработать деньги и уйти или быть просто тщетным. Например, я попал в бесчисленные теги, такие как «домашние», «первые», «сильнейшие» и «домашние», что привело к очень плохим или посредственным вещам, и автор, очевидно, не имеет представления о том, чтобы сделать проект хорошо, что является электронными отходами.
- Противостоять всем коммерческому поведению моделей ИИ, обученных с использованием несанкционированных наборов данных.
Если вы можете быть уверены, что то, что вы делаете, не электронные отходы, но является законным и совместимым, и нет серьезных политических ошибок, я окажу некоторую техническую поддержку в своих способностях.
Китайский путь не поддерживается? Фактически, онтология проекта поддерживает китайские пути, но версия Onnxruntime до марта 2023 года не поддерживает китайские пути, потому что эти версии использования функций Annxruntime Win32Api, а функции A-серии не поддерживают неазио из кодируемых путей. Эта проблема не то, что я могу решить или решить. Только Microsoft может исправить эту ошибку. К счастью, в последних функциях серии W OnNxruntime используются функции серии W для решения проблемы китайского пути.
Из-за чрезвычайно плохой совместимости CUDA программа, основанная на CUDA, должна быть установлена и составлена при установке и компиляции программы, или последняя версия CUDA не была изменена. Эту проблему можно ждать только, пока NVIDIA обратит внимание на совместимость.
Moevoicestudiocore предоставляет вызовы на языке C ++ в форме LIB
Ссылка на следующие соответствующие классы по мере необходимости
# 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
Остановить обновления (из -за скачивания и загрузки скорости): Vocoder & HiddenUnitbert
Остановить обновление (потому что Huggingface установлена на стене): 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 должен быть ["x"] , output_names должен быть ["audio"] , dynamic_axes должен быть {"x":[0,1],}Модель VEC и модель Hubert размещаются в папке Hubert, а модель Hifigan помещается в папку Hifigan. Если вам нужно использовать два предиктора F0, FCPE или RMVPE, вам необходимо создать папку F0Predictor в корневом каталоге и поместить в нее модель ONNX.
xxx.json - это файл конфигурации для модели. Он должен быть написан в соответствии с шаблоном самостоятельно, и в то же время он должен преобразовать модель в Onnx самостоятельно. Folder : Сохраните имя папки моделиName : отображаемое имя модели в пользовательском интерфейсе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, получены из:
Критерии для оценки с низким уровнем дохода: любой контент, генерируемый с использованием большого количества ИИ, исходное содержание низкое, значение неизвестно, содержание низкого качества и т. Д. ↩
Критерии суждения E-SPAM: 1. Оригинальность. Доля ваших собственных вещей на протяжении всего проекта (для ИИ создание использования моделей, которые полностью обучены вами независимо, принадлежит вам; создание использования моделей, которые являются другими, принадлежит другим). Охватываемые аспекты включают, но не ограничиваются программами, искусством, аудио, планированием и т. Д. ↩