以下代码块将实现语音转化为中文文字;
同声传译
大家好,我叫“微信同声传译”插件,是由微信智聆语音团队、微信翻译团队与公众平台联合推出的同传开放接口,可通过语音转文字、文本翻译、语音合成接口,为开发者赋能。
应用场景
场景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
© 版权声明
文章版权归作者所有,未经允许请勿转载。