[fix] Model: Handle cases where selected microphone or speaker devices are not available
This commit is contained in:
@@ -396,9 +396,9 @@ class Model:
|
||||
mic_device_list = device_manager.getMicDevices().get(mic_host_name, [{"name": "NoDevice"}])
|
||||
selected_mic_device = [device for device in mic_device_list if device["name"] == mic_device_name]
|
||||
|
||||
if len(selected_mic_device) == 0:
|
||||
return False
|
||||
|
||||
if len(selected_mic_device) == 0 or mic_device_name == "NoDevice":
|
||||
fnc({"text": False, "language": None})
|
||||
else:
|
||||
self.mic_audio_queue = Queue()
|
||||
# self.mic_energy_queue = Queue()
|
||||
|
||||
@@ -531,9 +531,9 @@ class Model:
|
||||
mic_device_list = device_manager.getMicDevices().get(mic_host_name, [{"name": "NoDevice"}])
|
||||
selected_mic_device = [device for device in mic_device_list if device["name"] == mic_device_name]
|
||||
|
||||
if len(selected_mic_device) == 0:
|
||||
return False
|
||||
|
||||
if len(selected_mic_device) == 0 or mic_device_name == "NoDevice":
|
||||
self.check_mic_energy_fnc(False)
|
||||
else:
|
||||
def sendMicEnergy():
|
||||
if mic_energy_queue.empty() is False:
|
||||
energy = mic_energy_queue.get()
|
||||
@@ -562,12 +562,14 @@ class Model:
|
||||
self.mic_energy_recorder = None
|
||||
|
||||
def startSpeakerTranscript(self, fnc):
|
||||
speaker_device_name = config.SELECTED_SPEAKER_DEVICE
|
||||
|
||||
speaker_device_list = device_manager.getSpeakerDevices()
|
||||
selected_speaker_device = [device for device in speaker_device_list if device["name"] == config.SELECTED_SPEAKER_DEVICE]
|
||||
|
||||
if len(selected_speaker_device) == 0:
|
||||
return False
|
||||
selected_speaker_device = [device for device in speaker_device_list if device["name"] == speaker_device_name]
|
||||
|
||||
if len(selected_speaker_device) == 0 or speaker_device_name == "NoDevice":
|
||||
fnc({"text": False, "language": None})
|
||||
else:
|
||||
speaker_audio_queue = Queue()
|
||||
# speaker_energy_queue = Queue()
|
||||
speaker_device = selected_speaker_device[0]
|
||||
@@ -656,12 +658,13 @@ class Model:
|
||||
if isinstance(fnc, Callable):
|
||||
self.check_speaker_energy_fnc = fnc
|
||||
|
||||
speaker_device_name = config.SELECTED_SPEAKER_DEVICE
|
||||
speaker_device_list = device_manager.getSpeakerDevices()
|
||||
selected_speaker_device = [device for device in speaker_device_list if device["name"] == config.SELECTED_SPEAKER_DEVICE]
|
||||
|
||||
if len(selected_speaker_device) == 0:
|
||||
return False
|
||||
selected_speaker_device = [device for device in speaker_device_list if device["name"] == speaker_device_name]
|
||||
|
||||
if len(selected_speaker_device) == 0 or speaker_device_name == "NoDevice":
|
||||
self.check_speaker_energy_fnc(False)
|
||||
else:
|
||||
def sendSpeakerEnergy():
|
||||
if speaker_energy_queue.empty() is False:
|
||||
energy = speaker_energy_queue.get()
|
||||
|
||||
Reference in New Issue
Block a user