| | |
| | | |
| | | ##### API-reference |
| | | ```shell |
| | | python wss_srv_asr.py \ |
| | | python funasr_wss_server.py \ |
| | | --port [port id] \ |
| | | --asr_model [asr model_name] \ |
| | | --asr_model_online [asr model_name] \ |
| | |
| | | ``` |
| | | ##### Usage examples |
| | | ```shell |
| | | python wss_srv_asr.py --port 10095 --asr_model "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch" --asr_model_online "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online" |
| | | python funasr_wss_server.py --port 10095 |
| | | ``` |
| | | |
| | | ## For the client |
| | |
| | | cd funasr/runtime/python/websocket |
| | | pip install -r requirements_client.txt |
| | | ``` |
| | | If you want infer from videos, you should install `ffmpeg` |
| | | ```shell |
| | | apt-get install -y ffmpeg #ubuntu |
| | | # yum install -y ffmpeg # centos |
| | | # brew install ffmpeg # mac |
| | | # winget install ffmpeg # wins |
| | | pip3 install websockets ffmpeg-python |
| | | ``` |
| | | |
| | | ### Start client |
| | | #### API-reference |
| | | ```shell |
| | | python wss_client_asr.py \ |
| | | python funasr_wss_client.py \ |
| | | --host [ip_address] \ |
| | | --port [port id] \ |
| | | --chunk_size ["5,10,5"=600ms, "8,8,4"=480ms] \ |
| | |
| | | --words_max_print [max number of words to print] \ |
| | | --audio_in [if set, loadding from wav.scp, else recording from mircrophone] \ |
| | | --output_dir [if set, write the results to output_dir] \ |
| | | --send_without_sleep [only set for offline] \ |
| | | --ssl [1 for wss connect, 0 for ws, default is 1] \ |
| | | --mode [`online` for streaming asr, `offline` for non-streaming, `2pass` for unifying streaming and non-streaming asr] \ |
| | | --thread_num [thread_num for send data] |
| | | ``` |
| | | |
| | | #### Usage examples |
| | |
| | | Recording from mircrophone |
| | | ```shell |
| | | # --chunk_interval, "10": 600/10=60ms, "5"=600/5=120ms, "20": 600/12=30ms |
| | | python wss_client_asr.py --host "0.0.0.0" --port 10095 --mode offline --chunk_interval 10 --words_max_print 100 |
| | | python funasr_wss_client.py --host "0.0.0.0" --port 10095 --mode offline |
| | | ``` |
| | | Loadding from wav.scp(kaldi style) |
| | | ```shell |
| | | # --chunk_interval, "10": 600/10=60ms, "5"=600/5=120ms, "20": 600/12=30ms |
| | | python wss_client_asr.py --host "0.0.0.0" --port 10095 --mode offline --chunk_interval 10 --words_max_print 100 --audio_in "./data/wav.scp" --output_dir "./results" |
| | | python funasr_wss_client.py --host "0.0.0.0" --port 10095 --mode offline --audio_in "./data/wav.scp" --output_dir "./results" |
| | | ``` |
| | | |
| | | ##### ASR streaming client |
| | | Recording from mircrophone |
| | | ```shell |
| | | # --chunk_size, "5,10,5"=600ms, "8,8,4"=480ms |
| | | python wss_client_asr.py --host "0.0.0.0" --port 10095 --mode online --chunk_size "5,10,5" --words_max_print 100 |
| | | python funasr_wss_client.py --host "0.0.0.0" --port 10095 --mode online --chunk_size "5,10,5" |
| | | ``` |
| | | Loadding from wav.scp(kaldi style) |
| | | ```shell |
| | | # --chunk_size, "5,10,5"=600ms, "8,8,4"=480ms |
| | | python wss_client_asr.py --host "0.0.0.0" --port 10095 --mode online --chunk_size "5,10,5" --audio_in "./data/wav.scp" --output_dir "./results" |
| | | python funasr_wss_client.py --host "0.0.0.0" --port 10095 --mode online --chunk_size "5,10,5" --audio_in "./data/wav.scp" --output_dir "./results" |
| | | ``` |
| | | |
| | | ##### ASR offline/online 2pass client |
| | | Recording from mircrophone |
| | | ```shell |
| | | # --chunk_size, "5,10,5"=600ms, "8,8,4"=480ms |
| | | python wss_client_asr.py --host "0.0.0.0" --port 10095 --mode 2pass --chunk_size "8,8,4" |
| | | python funasr_wss_client.py --host "0.0.0.0" --port 10095 --mode 2pass --chunk_size "8,8,4" |
| | | ``` |
| | | Loadding from wav.scp(kaldi style) |
| | | ```shell |
| | | # --chunk_size, "5,10,5"=600ms, "8,8,4"=480ms |
| | | python wss_client_asr.py --host "0.0.0.0" --port 10095 --mode 2pass --chunk_size "8,8,4" --audio_in "./data/wav.scp" --output_dir "./results" |
| | | python funasr_wss_client.py --host "0.0.0.0" --port 10095 --mode 2pass --chunk_size "8,8,4" --audio_in "./data/wav.scp" --output_dir "./results" |
| | | ``` |
| | | ## Acknowledge |
| | | 1. This project is maintained by [FunASR community](https://github.com/alibaba-damo-academy/FunASR). |