CoolFace
Apppublic

uxoxo/eb2ab

sourceHugging Faceapache-2.0updated 11mo agoView on Hugging Face
0likes
models.py503 linesDownload Raw Back to lib
1import os2 3from lib.conf import tts_dir, voices_dir4loaded_tts = {}5 6TTS_ENGINES = {7    "XTTSv2": "xtts", 8    "BARK": "bark", 9    "VITS": "vits", 10    "FAIRSEQ": "fairseq", 11    "TACOTRON2": "tacotron", 12    "YOURTTS": "yourtts"13}14 15TTS_VOICE_CONVERSION = {16    "freevc24": {"path": "voice_conversion_models/multilingual/vctk/freevc24", "samplerate": 24000},17    "knnvc": {"path": "voice_conversion_models/multilingual/multi-dataset/knnvc", "samplerate": 16000},18    "openvoice_v1": {"path": "voice_conversion_models/multilingual/multi-dataset/openvoice_v1", "samplerate": 22050},19    "openvoice_v2": {"path": "voice_conversion_models/multilingual/multi-dataset/openvoice_v2", "samplerate": 22050}20}21 22TTS_SML = {23    "break": "‡break‡",24    "pause": "‡pause‡",25    "###": "‡pause‡"26}27 28default_tts_engine = TTS_ENGINES['XTTSv2']29default_fine_tuned = 'internal'30default_vc_model = TTS_VOICE_CONVERSION['knnvc']['path']31default_voice_detection_model = 'drewThomasson/segmentation'32 33max_tts_in_memory = 2 # TTS engines to keep in memory (1 tts engine ~= 4GB to 8GB RAM).34max_custom_model = 10035max_custom_voices = 100036max_upload_size = '6GB'37 38default_engine_settings = {39    TTS_ENGINES['XTTSv2']: {40        "samplerate": 24000,41        "temperature": 0.75,42        "length_penalty": 1.0,43        "num_beams": 1,44        "repetition_penalty": 3.0,45        "top_k": 50,46        "top_p": 0.85,47        "speed": 1.0,48        "enable_text_splitting": False,49        # to enable deepspeed, you must install it first:50        # conda activate ./python_env (linux/mac) or .\python_env (windows)51        # pip install deepspeed52        # conda deactivate53        "use_deepspeed": False,54        "files": ['config.json', 'model.pth', 'vocab.json', 'ref.wav', 'speakers_xtts.pth'],55        "voices": {56            "ClaribelDervla": "Claribel Dervla", "DaisyStudious": "Daisy Studious", "GracieWise": "Gracie Wise",57            "TammieEma": "Tammie Ema", "AlisonDietlinde": "Alison Dietlinde", "AnaFlorence": "Ana Florence",58            "AnnmarieNele": "Annmarie Nele", "AsyaAnara": "Asya Anara", "BrendaStern": "Brenda Stern",59            "GittaNikolina": "Gitta Nikolina", "HenrietteUsha": "Henriette Usha", "SofiaHellen": "Sofia Hellen",60            "TammyGrit": "Tammy Grit", "TanjaAdelina": "Tanja Adelina", "VjollcaJohnnie": "Vjollca Johnnie",61            "AndrewChipper": "Andrew Chipper", "BadrOdhiambo": "Badr Odhiambo", "DionisioSchuyler": "Dionisio Schuyler",62            "RoystonMin": "Royston Min", "ViktorEka": "Viktor Eka", "AbrahanMack": "Abrahan Mack",63            "AddeMichal": "Adde Michal", "BaldurSanjin": "Baldur Sanjin", "CraigGutsy": "Craig Gutsy",64            "DamienBlack": "Damien Black", "GilbertoMathias": "Gilberto Mathias", "IlkinUrbano": "Ilkin Urbano",65            "KazuhikoAtallah": "Kazuhiko Atallah", "LudvigMilivoj": "Ludvig Milivoj", "SuadQasim": "Suad Qasim",66            "TorcullDiarmuid": "Torcull Diarmuid", "ViktorMenelaos": "Viktor Menelaos", "ZacharieAimilios": "Zacharie Aimilios",67            "NovaHogarth": "Nova Hogarth", "MajaRuoho": "Maja Ruoho", "UtaObando": "Uta Obando",68            "LidiyaSzekeres": "Lidiya Szekeres", "ChandraMacFarland": "Chandra MacFarland", "SzofiGranger": "Szofi Granger",69            "CamillaHolmström": "Camilla Holmström", "LilyaStainthorpe": "Lilya Stainthorpe", "ZofijaKendrick": "Zofija Kendrick",70            "NarelleMoon": "Narelle Moon", "BarboraMacLean": "Barbora MacLean", "AlexandraHisakawa": "Alexandra Hisakawa",71            "AlmaMaría": "Alma María", "RosemaryOkafor": "Rosemary Okafor", "IgeBehringer": "Ige Behringer",72            "FilipTraverse": "Filip Traverse", "DamjanChapman": "Damjan Chapman", "WulfCarlevaro": "Wulf Carlevaro",73            "AaronDreschner": "Aaron Dreschner", "KumarDahl": "Kumar Dahl", "EugenioMataracı": "Eugenio Mataracı",74            "FerranSimen": "Ferran Simen", "XavierHayasaka": "Xavier Hayasaka", "LuisMoray": "Luis Moray",75            "MarcosRudaski": "Marcos Rudaski"76        },77        "rating": {"GPU VRAM": 4, "CPU": 3, "RAM": 8, "Realism": 4}78    },79    TTS_ENGINES['BARK']: {80        "samplerate": 24000,81        "text_temp": 0.50,82        "waveform_temp": 0.50,83        "files": ["text_2.pt", "coarse_2.pt", "fine_2.pt"],84        "speakers_path": os.path.join(voices_dir, '__bark'),85        "voices": {86            "de_speaker_0": "Speaker 0", "de_speaker_1": "Speaker 1", "de_speaker_2": "Speaker 2",87            "de_speaker_3": "Speaker 3", "de_speaker_4": "Speaker 4", "de_speaker_5": "Speaker 5",88            "de_speaker_6": "Speaker 6", "de_speaker_7": "Speaker 7", "de_speaker_8": "Speaker 8",89            "de_speaker_9": "Speaker 9", "en_speaker_0": "Speaker 0", "en_speaker_1": "Speaker 1",90            "en_speaker_2": "Speaker 2", "en_speaker_3": "Speaker 3", "en_speaker_4": "Speaker 4",91            "en_speaker_5": "Speaker 5", "en_speaker_6": "Speaker 6", "en_speaker_7": "Speaker 7",92            "en_speaker_8": "Speaker 8", "en_speaker_9": "Speaker 9", "es_speaker_0": "Speaker 0",93            "es_speaker_1": "Speaker 1", "es_speaker_2": "Speaker 2", "es_speaker_3": "Speaker 3",94            "es_speaker_4": "Speaker 4", "es_speaker_5": "Speaker 5", "es_speaker_6": "Speaker 6",95            "es_speaker_7": "Speaker 7", "es_speaker_8": "Speaker 8", "es_speaker_9": "Speaker 9",96            "fr_speaker_0": "Speaker 0", "fr_speaker_1": "Speaker 1", "fr_speaker_2": "Speaker 2",97            "fr_speaker_3": "Speaker 3", "fr_speaker_4": "Speaker 4", "fr_speaker_5": "Speaker 5",98            "fr_speaker_6": "Speaker 6", "fr_speaker_7": "Speaker 7", "fr_speaker_8": "Speaker 8",99            "fr_speaker_9": "Speaker 9", "hi_speaker_0": "Speaker 0", "hi_speaker_1": "Speaker 1",100            "hi_speaker_2": "Speaker 2", "hi_speaker_3": "Speaker 3", "hi_speaker_4": "Speaker 4",101            "hi_speaker_5": "Speaker 5", "hi_speaker_6": "Speaker 6", "hi_speaker_7": "Speaker 7",102            "hi_speaker_8": "Speaker 8", "hi_speaker_9": "Speaker 9", "it_speaker_0": "Speaker 0",103            "it_speaker_1": "Speaker 1", "it_speaker_2": "Speaker 2", "it_speaker_3": "Speaker 3",104            "it_speaker_4": "Speaker 4", "it_speaker_5": "Speaker 5", "it_speaker_6": "Speaker 6",105            "it_speaker_7": "Speaker 7", "it_speaker_8": "Speaker 8", "it_speaker_9": "Speaker 9",106            "ja_speaker_0": "Speaker 0", "ja_speaker_1": "Speaker 1", "ja_speaker_2": "Speaker 2",107            "ja_speaker_3": "Speaker 3", "ja_speaker_4": "Speaker 4", "ja_speaker_5": "Speaker 5",108            "ja_speaker_6": "Speaker 6", "ja_speaker_7": "Speaker 7", "ja_speaker_8": "Speaker 8",109            "ja_speaker_9": "Speaker 9", "ko_speaker_0": "Speaker 0", "ko_speaker_1": "Speaker 1",110            "ko_speaker_2": "Speaker 2", "ko_speaker_3": "Speaker 3", "ko_speaker_4": "Speaker 4",111            "ko_speaker_5": "Speaker 5", "ko_speaker_6": "Speaker 6", "ko_speaker_7": "Speaker 7",112            "ko_speaker_8": "Speaker 8", "ko_speaker_9": "Speaker 9", "pl_speaker_0": "Speaker 0",113            "pl_speaker_1": "Speaker 1", "pl_speaker_2": "Speaker 2", "pl_speaker_3": "Speaker 3",114            "pl_speaker_4": "Speaker 4", "pl_speaker_5": "Speaker 5", "pl_speaker_6": "Speaker 6",115            "pl_speaker_7": "Speaker 7", "pl_speaker_8": "Speaker 8", "pl_speaker_9": "Speaker 9",116            "pt_speaker_0": "Speaker 0", "pt_speaker_1": "Speaker 1", "pt_speaker_2": "Speaker 2",117            "pt_speaker_3": "Speaker 3", "pt_speaker_4": "Speaker 4", "pt_speaker_5": "Speaker 5",118            "pt_speaker_6": "Speaker 6", "pt_speaker_7": "Speaker 7", "pt_speaker_8": "Speaker 8",119            "pt_speaker_9": "Speaker 9", "ru_speaker_0": "Speaker 0", "ru_speaker_1": "Speaker 1",120            "ru_speaker_2": "Speaker 2", "ru_speaker_3": "Speaker 3", "ru_speaker_4": "Speaker 4",121            "ru_speaker_5": "Speaker 5", "ru_speaker_6": "Speaker 6", "ru_speaker_7": "Speaker 7",122            "ru_speaker_8": "Speaker 8", "ru_speaker_9": "Speaker 9", "tr_speaker_0": "Speaker 0",123            "tr_speaker_1": "Speaker 1", "tr_speaker_2": "Speaker 2", "tr_speaker_3": "Speaker 3",124            "tr_speaker_4": "Speaker 4", "tr_speaker_5": "Speaker 5", "tr_speaker_6": "Speaker 6",125            "tr_speaker_7": "Speaker 7", "tr_speaker_8": "Speaker 8", "tr_speaker_9": "Speaker 9",126            "zh_speaker_0": "Speaker 0", "zh_speaker_1": "Speaker 1", "zh_speaker_2": "Speaker 2",127            "zh_speaker_3": "Speaker 3", "zh_speaker_4": "Speaker 4", "zh_speaker_5": "Speaker 5",128            "zh_speaker_6": "Speaker 6", "zh_speaker_7": "Speaker 7", "zh_speaker_8": "Speaker 8",129            "zh_speaker_9": "Speaker 9"130        },131        "rating": {"GPU VRAM": 4, "CPU": 1, "RAM": 16, "Realism": 3}132    },133    TTS_ENGINES['VITS']: {134        "samplerate": 22050,135        "files": ['config.json', 'model_file.pth', 'language_ids.json'],136        "voices": {},137        "rating": {"GPU VRAM": 2, "CPU": 3, "RAM": 4, "Realism": 2}138    },139    TTS_ENGINES['FAIRSEQ']: {140        "samplerate": 16000,141        "files": ['config.json', 'G_100000.pth', 'vocab.json'],142        "voices": {},143        "rating": {"GPU VRAM": 2, "CPU": 3, "RAM": 4, "Realism": 2}144    },145    TTS_ENGINES['TACOTRON2']: {146        "samplerate": 22050,147        "files": ['config.json', 'best_model.pth', 'vocoder_config.json', 'vocoder_model.pth'],148        "voices": {},149        "rating": {"GPU VRAM": 2, "CPU": 3, "RAM": 4, "Realism": 2}150    },151    TTS_ENGINES['YOURTTS']: {152        "samplerate": 16000,153        "files": ['config.json', 'model_file.pth'],154        "voices": {"Machinella-5": "female-en-5", "ElectroMale-2": "male-en-2", 'Machinella-4': 'female-pt-4\n', 'ElectroMale-3': 'male-pt-3\n'},155        "rating": {"GPU VRAM": 1, "CPU": 5, "RAM": 4, "Realism": 1}156    }157}158models = {159    TTS_ENGINES['XTTSv2']: {160        "internal": {161            "lang": "multi",162            "repo": "coqui/XTTS-v2",163            "sub": "tts_models/multilingual/multi-dataset/xtts_v2/",164            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'KumarDahl.wav'),165            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],166            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']167        },168        "AiExplained": {169            "lang": "eng",170            "repo": "drewThomasson/fineTunedTTSModels",171            "sub": "xtts-v2/eng/AiExplained/",172            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'AiExplained.wav'),173            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],174            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']175        },176        "AsmrRacoon": {177            "lang": "eng",178            "repo": "drewThomasson/fineTunedTTSModels",179            "sub": "xtts-v2/eng/AsmrRacoon/",180            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'AsmrRacoon.wav'),181            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],182            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']183        },184        "Awkwafina": {185            "lang": "eng",186            "repo": "drewThomasson/fineTunedTTSModels",187            "sub": "xtts-v2/eng/Awkwafina/",188            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'Awkwafina.wav'),189            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],190            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']191        },192        "BobOdenkirk": {193            "lang": "eng",194            "repo": "drewThomasson/fineTunedTTSModels",195            "sub": "xtts-v2/eng/BobOdenkirk/",196            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'BobOdenkirk.wav'),197            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],198            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']199        },200        "BobRoss": {201            "lang": "eng",202            "repo": "drewThomasson/fineTunedTTSModels",203            "sub": "xtts-v2/eng/BobRoss/",204            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'BobRoss.wav'),205            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],206            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']207        },208        "BrinaPalencia": {209            "lang": "eng",210            "repo": "drewThomasson/fineTunedTTSModels",211            "sub": "xtts-v2/eng/BrinaPalencia/",212            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'BrinaPalencia.wav'),213            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],214            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']215        },216        "BryanCranston": {217            "lang": "eng",218            "repo": "drewThomasson/fineTunedTTSModels",219            "sub": "xtts-v2/eng/BryanCranston/",220            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'BryanCranston.wav'),221            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],222            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']223        },224        "DavidAttenborough": {225            "lang": "eng",226            "repo": "drewThomasson/fineTunedTTSModels",227            "sub": "xtts-v2/eng/DavidAttenborough/",228            "voice": os.path.join(voices_dir, 'eng', 'elder', 'male', 'DavidAttenborough.wav'),229            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],230            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']231        },232        "DeathPussInBoots": {233            "lang": "eng",234            "repo": "drewThomasson/fineTunedTTSModels",235            "sub": "xtts-v2/eng/DeathPussInBoots/",236            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'DeathPussInBoots.wav'),237            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],238            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']239        },240        "DermotCrowley": {241            "lang": "eng",242            "repo": "drewThomasson/fineTunedTTSModels",243            "sub": "xtts-v2/eng/DermotCrowley/",244            "voice": os.path.join(voices_dir, 'eng', 'elder', 'male', 'DermotCrowley.wav'),245            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],246            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']247        },248        "EvaSeymour": {249            "lang": "eng",250            "repo": "drewThomasson/fineTunedTTSModels",251            "sub": "xtts-v2/eng/EvaSeymour/",252            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'EvaSeymour.wav'),253            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],254            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']255        },256        "GideonOfnirEldenRing": {257            "lang": "eng",258            "repo": "drewThomasson/fineTunedTTSModels",259            "sub": "xtts-v2/eng/GideonOfnirEldenRing/",260            "voice": os.path.join(voices_dir, 'eng', 'elder', 'male', 'GideonOfnirEldenRing.wav'),261            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],262            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']263        },264        "GhostMW2": {265            "lang": "eng",266            "repo": "drewThomasson/fineTunedTTSModels",267            "sub": "xtts-v2/eng/GhostMW2/",268            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'GhostMW2.wav'),269            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],270            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']271        },272        "JhonButlerASMR": {273            "lang": "eng",274            "repo": "drewThomasson/fineTunedTTSModels",275            "sub": "xtts-v2/eng/JhonButlerASMR/",276            "voice": os.path.join(voices_dir, 'eng', 'elder', 'male', 'JhonButlerASMR.wav'),277            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],278            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']279        },280        "JhonMulaney": {281            "lang": "eng",282            "repo": "drewThomasson/fineTunedTTSModels",283            "sub": "xtts-v2/eng/JhonMulaney/",284            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'JhonMulaney.wav'),285            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],286            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']287        },288        "JillRedfield": {289            "lang": "eng",290            "repo": "drewThomasson/fineTunedTTSModels",291            "sub": "xtts-v2/eng/JillRedfield/",292            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'JillRedfield.wav'),293            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],294            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']295        },296        "JuliaWhenlan": {297            "lang": "eng",298            "repo": "drewThomasson/fineTunedTTSModels",299            "sub": "xtts-v2/eng/JuliaWhenlan/",300            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'JuliaWhenlan.wav'),301            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],302            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']303        },304        "LeeHorsley": {305            "lang": "eng",306            "repo": "drewThomasson/fineTunedTTSModels",307            "sub": "xtts-v2/eng/LeeHorsley/",308            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'LeeHorsley.wav'),309            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],310            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']311        },312        "MelinaEldenRing": {313            "lang": "eng",314            "repo": "drewThomasson/fineTunedTTSModels",315            "sub": "xtts-v2/eng/MelinaEldenRing/",316            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'MelinaEldenRing.wav'),317            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],318            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']319        },320        "MorganFreeman": {321            "lang": "eng",322            "repo": "drewThomasson/fineTunedTTSModels",323            "sub": "xtts-v2/eng/MorganFreeman/",324            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'MorganFreeman.wav'),325            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],326            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']327        },328        "NeilGaiman": {329            "lang": "eng",330            "repo": "drewThomasson/fineTunedTTSModels",331            "sub": "xtts-v2/eng/NeilGaiman/",332            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'NeilGaiman.wav'),333            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],334            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']335        },336        "RainyDayHeadSpace": {337            "lang": "eng",338            "repo": "drewThomasson/fineTunedTTSModels",339            "sub": "xtts-v2/eng/RainyDayHeadSpace/",340            "voice": os.path.join(voices_dir, 'eng', 'elder', 'male', 'RainyDayHeadSpace.wav'),341            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],342            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']343        },344        "RayPorter": {345            "lang": "eng",346            "repo": "drewThomasson/fineTunedTTSModels",347            "sub": "xtts-v2/eng/RayPorter/",348            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'RayPorter.wav'),349            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],350            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']351        },352        "RelaxForAWhile": {353            "lang": "eng",354            "repo": "drewThomasson/fineTunedTTSModels",355            "sub": "xtts-v2/eng/RelaxForAWhile/",356            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'RelaxForAWhile.wav'),357            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],358            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']359        },360        "RosamundPike": {361            "lang": "eng",362            "repo": "drewThomasson/fineTunedTTSModels",363            "sub": "xtts-v2/eng/RosamundPike/",364            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'RosamundPike.wav'),365            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],366            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']367        },368        "ScarlettJohansson": {369            "lang": "eng",370            "repo": "drewThomasson/fineTunedTTSModels",371            "sub": "xtts-v2/eng/ScarlettJohansson/",372            "voice": os.path.join(voices_dir, 'eng', 'adult', 'female', 'ScarlettJohansson.wav'),373            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],374            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']375        },376        "SladeTeenTitans": {377            "lang": "eng",378            "repo": "drewThomasson/fineTunedTTSModels",379            "sub": "xtts-v2/eng/SladeTeenTitans/",380            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'SladeTeenTitans.wav'),381            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],382            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']383        },384        "StanleyParable": {385            "lang": "eng",386            "repo": "drewThomasson/fineTunedTTSModels",387            "sub": "xtts-v2/eng/StanleyParable/",388            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'StanleyParable.wav'),389            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],390            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']391        },392        "Top15s": {393            "lang": "eng",394            "repo": "drewThomasson/fineTunedTTSModels",395            "sub": "xtts-v2/eng/Top15s/",396            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'Top15s.wav'),397            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],398            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']399        },400        "WhisperSalemASMR": {401            "lang": "eng",402            "repo": "drewThomasson/fineTunedTTSModels",403            "sub": "xtts-v2/eng/WhisperSalemASMR/",404            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'WhisperSalemASMR.wav'),405            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],406            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']407        },408        "Konishev": {409            "lang": "rus",410            "repo": "drewThomasson/fineTunedTTSModels",411            "sub": "xtts-v2/rus/Konishev/",412            "voice": os.path.join(voices_dir, 'rus', 'adult', 'male', 'Konishev.wav'),413            "files": default_engine_settings[TTS_ENGINES['XTTSv2']]['files'],414            "samplerate": default_engine_settings[TTS_ENGINES['XTTSv2']]['samplerate']415        }416    },417    TTS_ENGINES['BARK']: {418        "internal": {419            "lang": "multi",420            "repo": "erogol/bark", # suno/bark, rsxdalv/suno, tts_models/multilingual/multi-dataset/bark421            "sub": "", # {"big-bf16": "big-bf16/", "small-bf16": "small-bf16/", "big": "big/", "small": "small/"}422            "voice": os.path.join(voices_dir, 'eng', 'adult', 'male', 'KumarDahl.wav'),423            "files": default_engine_settings[TTS_ENGINES['BARK']]['files'],424            "samplerate": default_engine_settings[TTS_ENGINES['BARK']]['samplerate']425        }426    },427    TTS_ENGINES['VITS']: {428        "internal": {429            "lang": "multi",430            "repo": "tts_models/[lang_iso1]/[xxx]",431            "sub": {432                "css10/vits": ['es','hu','fi','fr','nl','ru','el'],433                "custom/vits": ['ca'],434                "custom/vits-female": ['bn', 'fa'],435                "cv/vits": ['bg','cs','da','et','ga','hr','lt','lv','mt','pt','ro','sk','sl','sv'],436                "mai/vits": ['uk'],437                "mai_female/vits": ['pl'],438                "mai_male/vits": ['it'],439                "openbible/vits": ['ewe','hau','lin','tw_akuapem','tw_asante','yor'],440                "vctk/vits": ['en'],441                "thorsten/vits": ['de']442            },443            "voice": None,444            "files": default_engine_settings[TTS_ENGINES['VITS']]['files'],445            "samplerate": {446                "css10/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],447                "custom/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],448                "custom/vits-female": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],449                "cv/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],450                "mai/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],451                "mai_female/vits": 24000,452                "mai_male/vits": 16000,453                "openbible/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],454                "vctk/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate'],455                "thorsten/vits": default_engine_settings[TTS_ENGINES['VITS']]['samplerate']456            }457        }458    },459    TTS_ENGINES['FAIRSEQ']: {460        "internal": {461            "lang": "multi",462            "repo": "tts_models/[lang]/fairseq/vits",463            "sub": "",464            "voice": None,465            "files": default_engine_settings[TTS_ENGINES['FAIRSEQ']]['files'],466            "samplerate": default_engine_settings[TTS_ENGINES['FAIRSEQ']]['samplerate']467        }468    },469    TTS_ENGINES['TACOTRON2']: {470       "internal": {471            "lang": "multi",472            "repo": "tts_models/[lang_iso1]/[xxx]",473            "sub": {474                "mai/tacotron2-DDC": ['fr', 'es', 'nl'],475                "thorsten/tacotron2-DDC": ['de'],476                "kokoro/tacotron2-DDC": ['ja'],477                "ljspeech/tacotron2-DDC": ['en'],478                "baker/tacotron2-DDC-GST": ['zh-CN']              479            },480            "voice": None,481            "files": default_engine_settings[TTS_ENGINES['TACOTRON2']]['files'],482            "samplerate": {483                "mai/tacotron2-DDC": default_engine_settings[TTS_ENGINES['TACOTRON2']]['samplerate'],484                "thorsten/tacotron2-DDC": default_engine_settings[TTS_ENGINES['TACOTRON2']]['samplerate'],485                "kokoro/tacotron2-DDC": default_engine_settings[TTS_ENGINES['TACOTRON2']]['samplerate'],486                "ljspeech/tacotron2-DDC": default_engine_settings[TTS_ENGINES['TACOTRON2']]['samplerate'],487                "baker/tacotron2-DDC-GST": default_engine_settings[TTS_ENGINES['TACOTRON2']]['samplerate']488            },489        }490    },491    TTS_ENGINES['YOURTTS']: {492        "internal": {493            "lang": "multi",494            "repo": "tts_models/multilingual/multi-dataset/your_tts",495            "sub": "",496            "voice": None,497            "files": default_engine_settings[TTS_ENGINES['YOURTTS']]['files'],498            "samplerate": default_engine_settings[TTS_ENGINES['YOURTTS']]['samplerate']499        }500    }501}502 503