diff --git a/voice_recognition.py b/voice_recognition.py index 3cde36c..4ffecf3 100644 --- a/voice_recognition.py +++ b/voice_recognition.py @@ -112,9 +112,8 @@ class SRBuffer(voice_recv.AudioSink): if user: self.wavewriter[str(user.id)][0].writeframes(data.pcm) self.wavewriter[str(user.id)][1] = time.time_ns() #time from last write - self.wavewriter[str(user.id)][2] = time.time_ns() #time since last rotation - self.wavewriter[str(user.id)][3] = True - self.wavewriter[str(user.id)][4] = True + self.wavewriter[str(user.id)][3] = True #data written in last iter + self.wavewriter[str(user.id)][4] = True #data in buffer def cleanup(self) -> None: try: @@ -168,16 +167,11 @@ class Transcriber(commands.Cog): if timediff_rotation > 3000149433 and timediff_write > 500014943 and item[4]: logger.info("File rotation time since last write %s", timediff_write/1e9) logger.info("File rotation time since last rotation %s", timediff_rotation/1e9) + item[2] = time.time_ns() item[4] = False item[0].rotate() - #temporary - will be put in separate thread await self.transcribe(item[0].file_name_past) - item[4] = False - logger.info("Diff : %s", time.time_ns() - item[1]) - - @tasks.loop(seconds=1) - async def scan_queue(self): - self.comm_queue.get() + item[3] = False @commands.Cog.listener() async def on_voice_state_update(self, user, before, after): @@ -209,6 +203,7 @@ class Transcriber(commands.Cog): await ctx.voice_client.disconnect() def transcribe_output_queue(queue): + logger.info("Worker start") while True: queue.get() logger.info("PING")