From b5db201e707652e252535d853fc0369593dd39cc Mon Sep 17 00:00:00 2001 From: misyaguziya Date: Fri, 4 Oct 2024 16:44:28 +0900 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B[bugfix]=20DeviceManager=20:=20devi?= =?UTF-8?q?ce=E8=87=AA=E5=8B=95=E8=A8=AD=E5=AE=9AON=E6=99=82=E3=81=AB?= =?UTF-8?q?=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=83=87=E3=83=90?= =?UTF-8?q?=E3=82=A4=E3=82=B9=E3=81=AB=E5=A4=89=E6=9B=B4=E3=81=99=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-python/device_manager.py | 15 +++++++++++++-- src-python/webui_controller.py | 15 +++++++-------- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/src-python/device_manager.py b/src-python/device_manager.py index 434a5314..bae8b8a7 100644 --- a/src-python/device_manager.py +++ b/src-python/device_manager.py @@ -257,7 +257,7 @@ class DeviceManager: if self.callback_default_speaker_device is not None and self.update_flag_default_speaker_device is True: self.setSpeakerDefaultDevice() if self.callback_host_list is not None and self.update_flag_host_list is True: - self.setMicHost() + self.setMicHostList() if self.callback_mic_device_list is not None and self.update_flag_mic_device_list is True: self.setMicDeviceList() if self.callback_speaker_device_list is not None and self.update_flag_speaker_device_list is True: @@ -275,7 +275,7 @@ class DeviceManager: def setSpeakerDefaultDevice(self): self.callback_default_speaker_device(self.default_speaker_device["device"]["name"]) - def setMicHost(self): + def setMicHostList(self): self.callback_host_list() def setMicDeviceList(self): @@ -296,6 +296,17 @@ class DeviceManager: def getDefaultSpeakerDevice(self): return self.default_speaker_device + def forceUpdateAndSetMicDevices(self): + self.update() + self.setMicHostList() + self.setMicDeviceList() + self.setMicDefaultDevice() + + def forceUpdateAndSetSpeakerDevices(self): + self.update() + self.setSpeakerDeviceList() + self.setSpeakerDefaultDevice() + device_manager = DeviceManager() if __name__ == "__main__": diff --git a/src-python/webui_controller.py b/src-python/webui_controller.py index 8d7c939c..12f42d1d 100644 --- a/src-python/webui_controller.py +++ b/src-python/webui_controller.py @@ -608,8 +608,7 @@ class Controller: device_manager.setCallbackProcessBeforeUpdateDevices(self.stopAccessDevices) device_manager.setCallbackDefaultMicDevice(self.updateSelectedMicDevice) device_manager.setCallbackProcessAfterUpdateDevices(self.restartAccessDevices) - device_manager.noticeUpdateDevices() - device_manager.setMicDefaultDevice() + device_manager.forceUpdateAndSetMicDevices() return {"status":200, "result":config.AUTO_MIC_SELECT} @staticmethod @@ -793,8 +792,8 @@ class Controller: device_manager.setCallbackProcessBeforeUpdateDevices(self.stopAccessDevices) device_manager.setCallbackDefaultSpeakerDevice(self.updateSelectedSpeakerDevice) device_manager.setCallbackProcessAfterUpdateDevices(self.restartAccessDevices) - device_manager.noticeUpdateDevices() - device_manager.setSpeakerDefaultDevice() + device_manager.forceUpdateAndSetSpeakerDevices() + return {"status":200, "result":config.AUTO_SPEAKER_SELECT} @staticmethod @@ -1599,6 +1598,10 @@ class Controller: model.startCheckMuteSelfStatus() # init Auto device selection + device_manager.setCallbackHostList(self.updateMicHostList) + device_manager.setCallbackMicDeviceList(self.updateMicDeviceList) + device_manager.setCallbackSpeakerDeviceList(self.updateSpeakerDeviceList) + printLog("Init Auto Device Selection") if config.AUTO_MIC_SELECT is True: self.setEnableAutoMicSelect() @@ -1606,8 +1609,4 @@ class Controller: if config.AUTO_SPEAKER_SELECT is True: self.setEnableAutoSpeakerSelect() - device_manager.setCallbackHostList(self.updateMicHostList) - device_manager.setCallbackMicDeviceList(self.updateMicDeviceList) - device_manager.setCallbackSpeakerDeviceList(self.updateSpeakerDeviceList) - printLog("End Initialization") \ No newline at end of file