zhifu gao
2023-03-23 d50d98b0a9675beeaca1c8fdad0264f4334af8f1
funasr/runtime/python/websocket/ASR_server.py
@@ -53,7 +53,7 @@
inference_pipeline_vad = pipeline(
    task=Tasks.voice_activity_detection,
    model=args.vad_model,
    model_revision="v1.2.0",
    model_revision=None,
    output_dir=None,
    batch_size=1,
    mode='online',
@@ -62,7 +62,7 @@
param_dict_vad = {'in_cache': dict(), "is_final": False}
  
# asr
param_dict_asr = dict()
param_dict_asr = {}
# param_dict["hotword"] = "小五 小五月"  # 设置热词,用空格隔开
inference_pipeline_asr = pipeline(
    task=Tasks.auto_speech_recognition,
@@ -71,10 +71,11 @@
    ngpu=args.ngpu,
)
inference_pipline_punc = pipeline(
param_dict_punc = {'cache': list()}
inference_pipeline_punc = pipeline(
    task=Tasks.punctuation,
    model=args.punc_model,
    model_revision="v1.0.1",
    model_revision=None,
    ngpu=args.ngpu,
)
@@ -116,13 +117,16 @@
def asr():  # 推理
    global inference_pipeline2
    global speek
    global speek, param_dict_punc
    while True:
        while not speek.empty():
            audio_in = speek.get()
            speek.task_done()
            if len(audio_in) > 0:
            rec_result = inference_pipeline_asr(audio_in=audio_in)
            print(rec_result)
                if 'text' in rec_result:
                    rec_result = inference_pipeline_punc(text_in=rec_result['text'], param_dict=param_dict_punc)
                print(rec_result["text"])
            time.sleep(0.1)
        time.sleep(0.1)