html语音上传,语音识别—前端录音上传服务器进行语音识别

该博客介绍了如何在前端通过WebRTC录制语音,利用WebSocket将音频Blob发送到NodeJS服务器。服务器将音频保存为.wav文件,并使用百度AI的语音识别SDK进行识别,将结果显示回前端。整个流程包括搭建WebSocket服务器、处理音频文件和调用语音识别API。
摘要由CSDN通过智能技术生成

采用前端录音,Websocket搭建Node服务器,音频对象Blob使用Websocket传给后端服务器后写入本地音频文件,然后调用百度AI语音识别本地音频文件,最后将识别结果传给前端显示。

百度语音识别

查看文档知道了我想要的信息,如果想要实现实时语音识别、长时间段的语音、唤醒词功能、语义解析功能,需要使用Android、IOS SDK或者Linux C++ SDK版本,而我使用的Nodejs SDK是不支持的。

1、规格参数要求

语音时长上线为60s,超出讲返回错误

原始录音文件为pcm、wav或者amr格式,不区分大小写,推荐使用pcm

录音采样率为16000,声道为单通道

支持普通话、英文、粤语、四川话

项目结构

调用百度AI平台语音识别的Nodejs SDK,查看文档快速入门,可以查看如何调用。

首先将nodejs-sdk下载下来,下载后将目录里的speech文件夹拷贝到你的项目文件夹中,其中assets是存放录音音频的地方,然后进入node文件夹下的位置进行安装依赖包:

npm install

我的项目文件夹目录如下:

audio_asr_baidu

├─ package-lock.json

└─ speech

├─ .gitignore

├─ assets

│ ├─ 16k_test.pcm

│ └─ recorder.wav

├─ cpp

│ ├─ .gitignore

│ ├─ README.md

│ ├─ build.sh

│ └─ main.cpp

└─ node

├─ .gitignore

├─ README.md

├─ RecordRTC.js

├─ index.html

├─ main.js

├─ node_modules

├─ package-lock.json

├─ package.json

└─ style.css

然后在node文件夹里的index.html是我的客户端文件,main.js是我的服务端文件。

搭建Websocket服务器

在main.js文件里搭建websocket服务器,首先安装相关依赖模块:

npm i ws -S

然后搭建:

let Server = require('ws'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值