diff --git a/bridge_master.py b/bridge_master.py index bbd26ce..262e53a 100644 --- a/bridge_master.py +++ b/bridge_master.py @@ -790,16 +790,22 @@ def playFileOnRequest(self,fileNumber): speech = pkt_gen(_source_id, _nine, bytes_4(9), 1, _say) sleep(1) _slot = systems[system].STATUS[2] + _next_time = time() + _pkt_count = 0 while True: try: pkt = next(speech) except StopIteration: break - sleep(0.058) + _next_time += 0.058 + _delay = _next_time - time() + if _delay > 0.001: + sleep(_delay) _stream_id = pkt[16:20] _pkt_time = time() reactor.callFromThread(sendVoicePacket,self,pkt,_source_id,_nine,_slot) - logger.info('(%s) On-demand playback complete: %s', system, fileNumber) + _pkt_count += 1 + logger.info('(%s) On-demand playback complete: %s (%d packets)', system, fileNumber, _pkt_count) def threadIdent(): logger.debug('(IDENT) starting ident thread')