前言:
哈哈,这是我4月份的公司作业。如果仅仅是简单的语音识别倒也没什么难度,wav文件直接走模型输出结果的事。可是注意标题,流式识别、实时!
那么不得不说一下流式的优点了。
1、解决内存溢出的烦恼。
2、打算做成无文件生成,接收语音流直接走模型,减少磁盘存储压力。
本文使用paddlespeech+微信小程序实现效果,效果图如下:
流式语音识别示例
废话不多说了,上代码!
一、示例Demo地址:
链接:aHR0cHM6Ly9wYW4uYmFpZHUuY29tL3MvMXBWRjdfLXNveDBub0x0Z0lPR2pQT0HCoA==
提取码:zcq2
二、安装依赖【建议使用conda隔离环境】
pip install --upgrade paddlepaddle -i /pypi/simplepip install pytest-runnerpip install paddlespeech
还有一些其他依赖
pip install -r requirements.txt -i /pypi/simple
三、运行服务端
python main.py --port 8010
注意:如果nlp报错就比较尴尬,需要魔法来重新启动。或者网上的其他方法,这里我直接用魔法了。。。
main.py中的ip,最好改成自己局域网ip
然后uniapp前端运行,注意ws地址。
启动小程序后不要用电脑的麦克直接测试,因为小程序录音接口不支持PC。可以采用微信小程序真机调试 (手机网络在wifi局域网中),用手机去测试录音识别即可达到视频中的效果 。
测试感受
可能是手机麦克或直接流识别问题,容易出现错别字,所以建议微调小程序的采集率和麦克的清晰度。再就是小程序最多支持10分钟的录制。