This commit is contained in:
2024-09-19 23:25:41 +02:00
parent 6c68b574a2
commit 945ed5677b
+9 -8
View File
@@ -101,8 +101,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()
self.wavewriter[str(user.id)][2] = True #no writes
self.wavewriter[str(user.id)][3] = False #ready to rotate
self.wavewriter[str(user.id)][2] = True #still transmiting
self.wavewriter[str(user.id)][3] = True #there is data to write
def cleanup(self) -> None:
try:
@@ -149,12 +149,13 @@ class Transcriber(commands.Cog):
async def check_data(self):
for item in self.wsink.wavewriter.values():
logger.info("Item %s", item)
if not item[2] and not item[3]:
if time.time_ns() - item[1] > 34000000:
item[3] = True
elif not item[2] and item[3]:
item[0].rotate()
item[3] = False
if not item[2]:
timediff = time.time_ns() - item[1]
if timediff > 50000000 and item[3]: #timeout occured data to transmit exists
logger.info("File rotation at %s", timediff)
item[3] = False #buffer rotated
item[0].rotate()
#ensure only files with minimum length are sent to transcription
item[2] = False
logger.info("Diff : %s", time.time_ns() - item[1])