uniapp配置百度语音识别转文字(含demo)

前言

在dcloud社区已经给出了语音识别插件配置的步骤,点击前往:语音识别插件配置,

但是还是不够详细,有可能会遇到问题,所以我结合实例配置实现一下。

概述

HBuilderX已支持讯飞语音识别和百度语音识别:

  • 讯飞语音识别
    无需配置SDK参数
    由于讯飞语音识别SDK绑定appid,云端打包只能固定使用DCloud申请的appid,虽然无需开发者向讯飞语音开放平台申请应用,但也导致无法在讯飞语音开放平台自定义应用个性化的高级语音识别参数配置。
    不支持自定义语音识别界面

  • 百度语音识别
    需要向百度语音开放平台申请AppID、API Key、Secret Key,详情可参考百度语音识别引用申请教程。
    云端打包时在manifest.json中的“SDK配置”项中填入配置参数。
    支持自定义语音识别界面,参考HelloH5模板应用中Speech页面中的“自定义语音识别”源码

配置参数需要提交云端打包后才能生效,如果需要真机运行生效请使用自定义基座。

注意:讯飞语音识别有识别次数限制,所以建议优先使用百度语音识别。

一、百度语音识别申请

社区里也有百度语音识别应用申请教程(点击查看),非常详细。

申请后注意一定要领取免费额度,不然不能用,当然了有钱付费的话当我没说。。。

uniapp配置百度语音识别转文字(含demo)_第1张图片
二、配置插件

从百度语音开放平台申请获取配置参数后,需在HBuilderX中配置并提交云端打包才能生效。
老版本HBuilder配置界面有差异,逻辑是一样的,建议更新使用HBuilderX

打开项目的manifest.json文件,在“App模块配置”项中勾选“Speech(语音输入,只能选一个)”:

uniapp配置百度语音识别转文字(含demo)_第2张图片

这里的AppID、API Key、Secret Key我们从百度语音开放平台申请的应用里查看填写

uniapp配置百度语音识别转文字(含demo)_第3张图片

三、使用

startRecognize: function() {	//语音输入
				let _this = this;
				let options = {};
				options.engine = _this.speechEngine;//_this.speechEngine='baidu'
				options.punctuation = false; // 是否需要标点符号 
				options.timeout = 10 * 1000;//超时时间
				plus.speech.startRecognize(options, function(s) {
					_this.searchText = _this.searchText + s;
					console.log("识别结果:"+_this.searchText);
					// 关闭语音
					plus.speech.stopRecognize();
				});
			}

 uniapp配置百度语音识别转文字(含demo)_第4张图片

使用一切正常,over!

你可能感兴趣的:(uni-app,语音识别,百度,人工智能)