手机版

微信小程序和百度的语音识别接口详解

时间:2021-08-24 来源:互联网 编辑:宝哥软件园 浏览:

介绍

因为项目需要,使用到了微信小程序和百度的语音接口现在将项目中的一个小模块拿出来单独分享。

技术关键字

微微信小程序百度语音接口express fluent-FFM gp环境

windows 10 vs代码1.20.1微信小程序开发工具1.02.1802270 花生壳-提供域名和内容穿透-用于方便本地远程调试微信小程序考虑到业务并不复杂,所以就将所有的代码都放在一个页面就可以了(wxml、wxss、js统称为一个页面)

文件目录

页面

index.wxml

按钮类型=' default ' bindtuchstart=' startrecorderHandel ' bind touch end=' sendsrecorderhandel '开始8录音/buttonview你说的话是:视图{ { msg } }/视图/视图索引。射流研究…

//录音对象const recorderManager=wx。getrecordermanager();函数sendRecord(src) { var obj={ //已经在花生壳中映射到本地端口-3001 URL : ' http://xxx:34306/post ',文件路径: src,名称: 'fffile ',标头: { ' Content-Type ' : ' application/JSON ' },成功:函数(结果){ var data=JSON。解析(结果。数据);//消息为最终语音识别的字符串data.result//获取当前页面对象var page=GetCurrentPages()[0];佩奇。setdata({ msg : msg });},fail:函数(错误){控制台。日志(err);} };wx.uploadFile(obj)}//结束录音的时候触发记录员。onstop((RES)={//获取文件路径-提交到后台-后台发送到百度发送记录(RES . tempfile路径);})记录器管理器。onerror((RES)={ console。日志('错误',RES);});页面({ /** *页面的初始数据*/data: { msg: '' },//按下按钮的时候触发startrecorderHandel() { //开始录音记录员。start({ });}, //松开按钮的时候触发-发送录音senrecorderhandel(){//结束录音记录员。stop();}, /** * 生命周期函数-监听页面加载*/onLoad:函数(选项){ wx。授权({ scope : ' record ' })})后台开发接口文件目录

index.js

var express=require(' express ');var app=express();var fs=require(' fs ');定义变量多方=要求('多方');//转码工具var ffmpeg=require(' fluent-ffmpeg ');var AipSpeechClient=require(' Baidu-AIP-SDK ').演讲;//#地区创建百度授权//设置APPID/AK/SKvar APP _ ID=' XXX ';var API _ KEY=' xxxvar SECRET _ KEY=' XXX//百度请求对象var client=new AipSpeechClient(APP _ ID,API_KEY,SECRET _ KEY);//新建一个对象,建议只保存一个对象调用服务接口app.post('/post ',函数(请求,资源,下一个){ //生成多党的对象,并配置上传目标路径定义变量形式=新多方。表单({ uploaddir : ' uploads/' });//上传完成后处理form.parse(req,function (err,fields,file){ var filesttmp=JSON。stringify(文件,null,2);var InputFile=files。ff文件[0];var uploadedPath=输入文件。路径;定义变量命令=ffmpeg();命令。addinput(uploadedPath)//将1.aac变为1.wav .保存(uploadedPath.slice(0,-3)“wav”).开启('错误',函数(错误){控制台。日志(err);}) .on('end ',function () { //将录音文件转为缓冲var voice=fs。readfilesync(uploadedpath。切片(0,-3)“wav”);var voiceBuffer=新缓冲区(语音);//发送缓冲器到百度接口返回语音对应的字符串client.recognize(voiceBuffer,' wav ',16000).然后(函数(结果){控制台。日志('识别: ' JSON。stringify(result));决议结束(JSON。stringify(result));},函数(错误){控制台。日志(err);});});});});var server=app.listen(3001,function(){ var host=server。地址().地址;var port=server.address().港口;console.log('示例应用程序在http://% s 3360% s处侦听,主机,端口);});启动

下载项目

饭桶克隆https://github.com/itcastWsy/wx_baidu.git使用微信小程序打开微信前台目录

配置后台的接口地址

打开微信开发后台后台文件夹

输入国家预防机制一安装依赖

输入启动项目npm运行启动的命令

手机微信一扫小程序——语音输入“祝你好运”

需要注意的事项

使用微信开发工具发送语音文件时,格式是aac,但使用手机微信发送语音文件是m4a。这里,m4a转码工具是ffmpeg。

至于花生壳,如果不用,只需要用外部域名提交自己的代码到服务器接口就可以了。注意在开发阶段需要在applet开发工具中打开不检查安全域名的选项

调用百度界面时,需要填写自己的相关信息

以上是边肖介绍的微信小程序和百度语音识别界面的详细整合,希望对大家有所帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!

版权声明:微信小程序和百度的语音识别接口详解是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。