Browse Source

websocket bug

游雁 2 năm trước cách đây
mục cha
commit
4ee715e70e
1 tập tin đã thay đổi với 20 bổ sung5 xóa
  1. 20 5
      funasr/runtime/python/websocket/wss_client_asr.py

+ 20 - 5
funasr/runtime/python/websocket/wss_client_asr.py

@@ -176,9 +176,24 @@ async def record_from_scp(chunk_begin, chunk_size):
          await asyncio.sleep(1)
     
     await websocket.close()
-     
- 
- 
+
+
+async def ws_send():
+    global voices
+    global websocket
+    print("started to sending data!")
+    while True:
+        while not voices.empty():
+            data = voices.get()
+            voices.task_done()
+            try:
+                await websocket.send(data)
+            except Exception as e:
+                print('Exception occurred:', e)
+                traceback.print_exc()
+                exit(0)
+            await asyncio.sleep(0.005)
+        await asyncio.sleep(0.005)
 
  
              
@@ -262,9 +277,9 @@ async def ws_client(id, chunk_begin, chunk_size):
             task = asyncio.create_task(record_from_scp(i, 1))
         else:
             task = asyncio.create_task(record_microphone())
-        #task2 = asyncio.create_task(ws_send())
+        task2 = asyncio.create_task(ws_send())
         task3 = asyncio.create_task(message(str(id)+"_"+str(i))) #processid+fileid
-        await asyncio.gather(task, task3)
+        await asyncio.gather(task, task2, task3)
   exit(0)