MCPcopy Create free account
hub / github.com/dialect-app/dialect / load_tts

Method load_tts

dialect/window.py:460–509  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

458
459 @background_task
460 async def load_tts(self):
461 self.src_speech_btn.loading()
462 self.dest_speech_btn.loading()
463
464 # TTS name
465 provider = Settings.get().active_tts
466
467 # Check if TTS is disabled
468 if provider != "":
469 self.src_speech_btn.props.visible = True
470 self.dest_speech_btn.props.visible = True
471
472 # TTS Object
473 self.provider["tts"] = TTS[provider]()
474 # Connect to provider settings changes
475 self.provider["tts"].settings.connect(
476 "changed::instance-url", self._on_provider_changed, self.provider["tts"].name
477 )
478 self.provider["tts"].settings.connect(
479 "changed::api-key", self._on_provider_changed, self.provider["tts"].name
480 )
481
482 try:
483 # Do TTS init
484 await self.provider["tts"].init_tts()
485
486 self.speech_provider_failed = False
487 self.src_speech_btn.ready()
488 self.dest_speech_btn.ready()
489 self._check_speech_enabled()
490
491 # Loading failed
492 except (RequestError, ProviderError) as exc:
493 logging.error(exc)
494
495 button_text = _("Failed loading the text-to-speech service. Retry?")
496 toast_text = _("Failed loading the text-to-speech service")
497 if isinstance(exc, RequestError):
498 toast_text = _("Failed loading the text-to-speech service, check for network issues")
499
500 self.speech_provider_failed = True
501 self.src_speech_btn.error(button_text)
502 self.dest_speech_btn.error(button_text)
503 self.send_notification(toast_text)
504 self._check_speech_enabled()
505
506 else:
507 self.provider["tts"] = None
508 self.src_speech_btn.props.visible = False
509 self.dest_speech_btn.props.visible = False
510
511 def translate(self, text: str, src_lang: str | None, dest_lang: str | None):
512 """

Callers 3

setupMethod · 0.95
reload_providerMethod · 0.95
_on_speechMethod · 0.95

Calls 7

_check_speech_enabledMethod · 0.95
send_notificationMethod · 0.95
loadingMethod · 0.80
readyMethod · 0.80
errorMethod · 0.80
getMethod · 0.45
init_ttsMethod · 0.45

Tested by

no test coverage detected