Update elevenlabs to 1.0

pull/2060/head
Jason 1 year ago
parent a4f0022a5a
commit adf1e78413

@ -1,33 +1,28 @@
import random import random
from elevenlabs import generate, save from elevenlabs import save
from elevenlabs.client import ElevenLabs
from utils import settings from utils import settings
voices = [
"Adam",
"Antoni",
"Arnold",
"Bella",
"Domi",
"Elli",
"Josh",
"Rachel",
"Sam",
]
class elevenlabs: class elevenlabs:
def __init__(self): def __init__(self):
self.max_chars = 2500 self.max_chars = 2500
self.voices = voices self.client: ElevenLabs = None
def run(self, text, filepath, random_voice: bool = False): def run(self, text, filepath, random_voice: bool = False):
if self.client is None:
self.initialize()
if random_voice: if random_voice:
voice = self.randomvoice() voice = self.randomvoice()
else: else:
voice = str(settings.config["settings"]["tts"]["elevenlabs_voice_name"]).capitalize() voice = str(settings.config["settings"]["tts"]["elevenlabs_voice_name"]).capitalize()
audio = self.client.generate(text=text, voice=voice, model="eleven_multilingual_v1")
save(audio=audio, filename=filepath)
def initialize(self):
if settings.config["settings"]["tts"]["elevenlabs_api_key"]: if settings.config["settings"]["tts"]["elevenlabs_api_key"]:
api_key = settings.config["settings"]["tts"]["elevenlabs_api_key"] api_key = settings.config["settings"]["tts"]["elevenlabs_api_key"]
else: else:
@ -35,8 +30,9 @@ class elevenlabs:
"You didn't set an Elevenlabs API key! Please set the config variable ELEVENLABS_API_KEY to a valid API key." "You didn't set an Elevenlabs API key! Please set the config variable ELEVENLABS_API_KEY to a valid API key."
) )
audio = generate(api_key=api_key, text=text, voice=voice, model="eleven_multilingual_v1") self.client = ElevenLabs(api_key=api_key)
save(audio=audio, filename=filepath)
def randomvoice(self): def randomvoice(self):
return random.choice(self.voices) if self.client is None:
self.initialize()
return random.choice(self.client.voices.get_all().voices).voice_name

Loading…
Cancel
Save