以下代码块将实现语音转化为中文文字;
同声传译
大家好,我叫“微信同声传译”插件,是由微信智聆语音团队、微信翻译团队与公众平台联合推出的同传开放接口,可通过语音转文字、文本翻译、语音合成接口,为开发者赋能。
应用场景
场景1
英语口语、听力双管齐下,没有外教也能学好英语!
把我放在小程序里,我既可以将口语转为文字,也可以帮助用户判断发音是否标准纯正,是最佳听众和英语学习道路上的良师益友。
场景2
出国旅游,英语蹩脚怎么办?
这时我可以应用到翻译小程序里,说中文,译英文,再也不怕出国交流难。
场景3
看剧时想要吐槽!可是手里有零食,打字不方便怎么办?
只要在小程序里有我,用户就可以按住按钮说话,语音转文字,帮你发送弹幕!
添加插件
开发者可登录小程序后台管理,依次选择【设置】→【第三方服务】→【添加插件】→输入“同声传译”或者“语音识别”、“翻译”等搜索关键字搜索插件即可添加。
根目录
/** * 语音功能模块 * 开发者登录小程序公众平台后台管理,【设置】→【第三方设置】→【添加插件】→输入“同声传译”进行添加 */ const plugin = requirePlugin("WechatSI") const innerAudioContext = wx.createInnerAudioContext(); innerAudioContext.onError((res) => { // 播放音频失败的回调s }) function playTTS(text) { //need to add WXAPP plug-in unit: WechatSI plugin.textToSpeech({ lang: "zh_CN", tts: true, content: text, success: function (res) { log("succ tts", res.filename) innerAudioContext.src = res.filename; innerAudioContext.play() }, fail: function (res) { log("fail tts", res) } }) } function stopTTS() { innerAudioContext.stop(); }
页面使用
<view class="gif-box"> <view class="gif-box yuan-box" bindlongtap="longTap" bindtouchstart="touchStart" bindtouchend="touchEnd"> <view class="line_01"></view> <view class="line_02"></view> <view class="line_03"></view> <view class="line_04"></view> <view class="line_05"></view> </view> </view>
// 语音功能 const plugin = requirePlugin("WechatSI"); const manager = plugin.getRecordRecognitionManager(); Page({ data: { hint: '请按下说话!', //语音提示文字 showChuShiY: true, showLoader: false, }, onLoad() { }, // 触发长按事件 touchStart(e) { // console.log('触发长按') let _that = this _that.setData({ showLoader: true, hint: '请说,我在听', }) manager.start({ duration: 30000, //最长录音时间,单位/毫秒 lang: "zh_CN" //中文 }) }, // 长按事件过程 longTap(e) { // console.log('长按开始') }, // 长按松开事件 touchEnd(e) { let _that = this // console.log('松开') clearInterval(this.interval) // 停止识别 manager.stop() }, onShow() { // 语音功能---1、有新的识别内容返回调用 manager.onRecognize = (res) => { // console.log('语音功能开始') } // 语音功能----2、识别结束结果 manager.onStop = (res) => { // console.log('语音功能开始-----',res.result) } // 语音功能----3、识别错误信息 manager.onError = (res) => { if (res.retcode == -30001) { // console.log('30001---录音接口出错---没有授权录音请清空缓存重新登录授权'); } } } })
参数说明
全局唯一的语音识别管理器recordRecoManager实现 。
recordRecoManager 对象的方法列表:
方法 | 参数 | 说明 |
---|---|---|
start | options | 开始识别 |
stop | 结束识别 | |
onStart | callback | 正常开始录音识别时会调用此事件 |
onRecognize | callback | 有新的识别内容返回,则会调用此事件 |
onStop | callback | 识别结束事件 |
onError | callback | 识别错误事件 |
更多态码详情: https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wx069ba97219f66d99&token=173844001&lang=zh_CN
© 版权声明
文章版权归作者所有,未经允许请勿转载。