Bugfix in message, added a handle for returning a list of the stream messages from handleMessages()

This commit is contained in:
Anne de Jong 2021-05-24 16:08:11 +02:00
parent 0c1eef5388
commit 47bcd369b6

View File

@ -124,7 +124,7 @@ class AudioStream:
] ]
if len(matching_devices) == 0: if len(matching_devices) == 0:
raise RuntimeError("Could not find device {daqconfig.device_name}") raise RuntimeError(f"Could not find device {daqconfig.device_name}")
# TODO: We pick te first one, what to do if we have multiple matches? # TODO: We pick te first one, what to do if we have multiple matches?
# Is that even possible? # Is that even possible?
@ -160,7 +160,7 @@ class AudioStream:
# TODO: Fix this. This gives bug on Windows, the threading lock does # TODO: Fix this. This gives bug on Windows, the threading lock does
# give a strange erro. # give a strange erro.
try: try:
if not self.running(): if not self.running:
return 1 return 1
except Exception as e: except Exception as e:
print(e) print(e)
@ -291,7 +291,7 @@ class AvStreamProcess(mp.Process):
except Exception as e: except Exception as e:
self.sendAllQueues( self.sendAllQueues(
StreamMsg.streamError, avtype, f"Error starting stream {str(e)}" StreamMsg.streamError, avtype, f"Error starting stream: {str(e)}"
) )
return return
@ -494,6 +494,7 @@ class StreamManager:
Handle messages that are still on the pipe. Handle messages that are still on the pipe.
""" """
# logging.debug('StreamManager::handleMessages()') # logging.debug('StreamManager::handleMessages()')
msgs = []
while not self.our_msgqueue.empty(): while not self.our_msgqueue.empty():
msg, data = self.our_msgqueue.get() msg, data = self.our_msgqueue.get()
logging.debug(f'StreamManager obtained message {msg}') logging.debug(f'StreamManager obtained message {msg}')
@ -535,6 +536,9 @@ class StreamManager:
devices, = data devices, = data
# logging.debug(devices) # logging.debug(devices)
self.devices = devices self.devices = devices
msgs.append((msg, data))
return msgs
def getDeviceList(self): def getDeviceList(self):
self.handleMessages() self.handleMessages()