+
34
-

回答

1、使用插件,小程序后台设置-第三方服务-插件管理中搜索微信同声传译或腾讯云智能语音,使用这个插件即可实现实时语音识别。

微信同声传译不仅能实时识别,还是实时翻译成指定国家的语音,支持文本转语音合成,关键还是免费

	const plugin = requirePlugin('WechatSI');
	const manager = plugin.getRecordRecognitionManager()
	manager.onStop = function(res) {
		console.log("record file path", res.tempFilePath)
		console.log("result", res.result)
	}
	manager.onStart = function(res) {
		console.log("成功开始录音识别", res)
	}
	manager.onError = function(res) {
		console.error("error msg", res.msg)
	}
	plugin.textToSpeech({
		lang: "zh_CN",
		tts: true,
		content: "一个常见的需求",
		success: function(res) {
			//这个res.filename是生成后的声音文件地址url,
			console.log("succ tts", res.filename)
		},
		fail: function(res) {
			console.log("fail tts", res)
		}
	})

	manager.start({
		duration: 3000,
		lang: "zh_CN"
	})
	manager.stop()
	plugin.translate({
	  lfrom:"en_US",
	  lto:"zh_CN",
	  content:"hello, this is the first time to test?",
	  success: function(res) {
	    if(res.retcode == 0) {
	      console.log("result", res.result)
	    } else {
	      console.warn("翻译失败", res)
	    }
	  },
	  fail: function(res) {
	    console.log("网络失败",res)
	  }
	})

文档:https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/extended/translator.html

腾讯云智能语音不仅能使用语音,还能合成语音,但是需要开通腾讯云服务,收费的:文档:https://cloud.tencent.com/document/product/1093/48982

800_auto

2、使用第三方,例如百度、阿里云的实时语音识别api,通常是websocket的形式

阿里的paraformer实时识别引擎,能实时识别中文和其他方言,也非常便宜,开发文档:

https://help.aliyun.com/zh/model-studio/developer-reference/paraformer-real-time-speech-recognition-api

python示例代码

https://github.com/aliyun/alibabacloud-bailian-speech-demo/blob/master/samples/speech-recognition/recognize_speech_from_microphone/python/run.py

网友回复

我知道答案,我要回答