diff --git a/models/transcription/transcription_utils.py b/models/transcription/transcription_utils.py index e4a8ecc8..774ca323 100644 --- a/models/transcription/transcription_utils.py +++ b/models/transcription/transcription_utils.py @@ -33,16 +33,14 @@ def getOutputDevices(): devices = [] with PyAudio() as p: wasapi_info = p.get_host_api_info_by_type(paWASAPI) - defaultOutputDevice = wasapi_info["defaultOutputDevice"] - for host_index in range(0, p.get_host_api_count()): - for device_index in range(0, p.get_host_api_info_by_index(host_index)['deviceCount']): - device = p.get_device_info_by_host_api_device_index(host_index, device_index) - if device["index"] == defaultOutputDevice: - default_speakers = device - if not default_speakers["isLoopbackDevice"]: + host = p.get_host_api_info_by_index(host_index) + if host["name"] == wasapi_info["name"]: + for device_index in range(0, p.get_host_api_info_by_index(host_index)['deviceCount']): + device = p.get_device_info_by_host_api_device_index(host_index, device_index) + if not device["isLoopbackDevice"]: for loopback in p.get_loopback_device_info_generator(): - if default_speakers["name"] in loopback["name"]: + if device["name"] in loopback["name"]: devices.append(loopback) if len(devices) == 0: @@ -66,5 +64,5 @@ def getDefaultOutputDevice(): return {"device": {"name": "NoDevice"}} if __name__ == "__main__": - print("getOutputDevices():", getOutputDevices()) + print("getOutputDevices()", getOutputDevices()) print("getDefaultOutputDevice()", getDefaultOutputDevice()) \ No newline at end of file