👍️[Update] Model : overlayの機能をSpeaker2Logで表示できるように変更

This commit is contained in:
misyaguziya
2024-03-27 10:39:24 +09:00
parent 14bb05ad4e
commit c3b2f08b9b
3 changed files with 129 additions and 31 deletions

View File

@@ -26,6 +26,7 @@ from models.translation.translation_languages import translation_lang
from models.transcription.transcription_languages import transcription_lang
from models.translation.translation_utils import checkCTranslate2Weight
from models.transcription.transcription_whisper import checkWhisperWeight
from models.overlay.overlay import create_overlay_image, Overlay
from config import config
class threadFnc(Thread):
@@ -37,7 +38,7 @@ class threadFnc(Thread):
def stop(self):
self._stop.set()
def stopped(self):
return self._stop.isSet()
return self._stop.is_set()
def run(self):
while True:
if self.stopped():
@@ -67,6 +68,8 @@ class Model:
self.speaker_energy_plot_progressbar = None
self.translator = Translator()
self.keyword_processor = KeywordProcessor()
self.overlay = Overlay()
self.th_overlay = None
def checkCTranslatorCTranslate2ModelWeight(self):
return checkCTranslate2Weight(config.PATH_LOCAL, config.CTRANSLATE2_WEIGHT_TYPE)
@@ -533,4 +536,26 @@ class Model:
def notificationXSOverlay(self, message):
xsoverlayForVRCT(content=f"{message}")
def createOverlayImage(self, message, translation):
your_language = config.TARGET_LANGUAGE
target_language = config.SOURCE_LANGUAGE
return create_overlay_image(message, your_language, translation, target_language)
def setOverlayImage(self, img):
if self.overlay.initFlag is True:
self.overlay.uiMan.uiUpdate(img)
def startOverlay(self):
if self.overlay.initFlag is False:
self.overlay.init()
if self.overlay.initFlag is True:
self.th_overlay = threadFnc(self.overlay.startOverlay)
self.th_overlay.daemon = True
self.th_overlay.start()
def stopOverlay(self):
if isinstance(self.th_overlay, threadFnc):
self.th_overlay.stop()
self.th_overlay = None
model = Model()