From 44b3b7de33411f58249c14b4ea259160121d243b Mon Sep 17 00:00:00 2001 From: misygauziya Date: Tue, 11 Jul 2023 10:52:20 +0900 Subject: [PATCH] =?UTF-8?q?=E3=82=B9=E3=83=94=E3=83=BC=E3=82=AB=E3=83=BC?= =?UTF-8?q?=E3=81=AE=E5=87=BA=E5=8A=9B=E3=81=A0=E3=81=91=E7=9B=B4=E6=8E=A5?= =?UTF-8?q?=E5=8F=96=E5=BE=97=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- window_config.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/window_config.py b/window_config.py index 1be950e5..2b3c5c89 100644 --- a/window_config.py +++ b/window_config.py @@ -32,6 +32,7 @@ class ToplevelWindowConfig(CTkToplevel): self.mic_energy_recorder = None self.mic_energy_plot_progressbar = None self.speaker_energy_recorder = None + self.speaker_energy_get_progressbar = None self.speaker_energy_plot_progressbar = None # tabwiew config @@ -872,6 +873,11 @@ class ToplevelWindowConfig(CTkToplevel): pass sleep(0.01) + def progressBar_input_speaker_energy_get(self): + with self.speaker_energy_recorder.source as source: + energy = self.speaker_energy_recorder.recorder.listen_energy(source) + self.speaker_energy_queue.put(energy) + def checkbox_input_speaker_threshold_check_callback(self): if self.checkbox_input_speaker_threshold_check.get(): self.speaker_energy_queue = Queue() @@ -879,7 +885,9 @@ class ToplevelWindowConfig(CTkToplevel): if get_default_output_device()["index"] == speaker_device["index"]: self.speaker_energy_recorder = SelectedSpeakeEnergyRecorder(speaker_device) - self.speaker_energy_recorder.record_into_queue(self.speaker_energy_queue) + self.speaker_energy_get_progressbar = thread_fnc(self.progressBar_input_speaker_energy_get) + self.speaker_energy_get_progressbar.daemon = True + self.speaker_energy_get_progressbar.start() self.speaker_energy_plot_progressbar = thread_fnc(self.progressBar_input_speaker_energy_plot) self.speaker_energy_plot_progressbar.daemon = True self.speaker_energy_plot_progressbar.start() @@ -887,8 +895,10 @@ class ToplevelWindowConfig(CTkToplevel): print_textbox(self.parent.textbox_message_log, "Windows playback device and selected device do not match. Change the Windows playback device.", "ERROR") self.checkbox_input_speaker_threshold_check.deselect() else: - if self.speaker_energy_recorder != None: - self.speaker_energy_recorder.stop() + if self.speaker_energy_get_progressbar != None: + self.speaker_energy_get_progressbar.stop() + # if self.speaker_energy_recorder != None: + # self.speaker_energy_recorder.stop() if self.speaker_energy_plot_progressbar != None: self.speaker_energy_plot_progressbar.stop() self.progressBar_input_speaker_energy_threshold.set(0)