uniapp 开发H5页面,实现语音识别功能--前端,不包含后端转换

这篇具有很好参考价值的文章主要介绍了uniapp 开发H5页面,实现语音识别功能--前端,不包含后端转换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、背景

微信小程序开发,内嵌h5页面,不能调用微信内部的插件

二、实现方式

通过安装 js-audio-recorder 插件实现既定需求

三、具体步骤

1、安装插件

npm i js-audio-recorder

2、引入

在需要使用的页面中引入:import Recorder from 'js-audio-recorder';

3、具体配置文章来源地址https://www.toymoban.com/news/detail-849601.html

1、定义recorder
data() {
		return {
			recorder: null
		};
},
2、页面加载时,初始化
onLoad() {
		this.recorder = new Recorder();
},
3、具体方法
methods:{
4、鼠标点击方法
startRecording() {
	this.recorder = new Recorder();
	Recorder.getPermission().then(
		() => {
			console.log('开始录音');
			this.titleShow = true;
			this.recorder.start(); // 开始录音
		},
		(error) => {
			uni.showToast({
				title: '请先允许该网页使用麦克风',
				icon:"error"
			});
			console.log(`${error.name} : ${error.message}`);
		}
	);
},
5、鼠标松开的方法
touchEnd() {
	this.yyShow = false;
	this.titleShow = false;
	const blob = this.recorder.getWAVBlob(); //调这个方法会自动调用stop
	const newbolb = new Blob([blob], { type: 'audio/wav' });
	this.blobToBase64(newbolb)
		.then((base64) => {
			7、调用后端接口
			this.$UniRequest.Post({
				url: this.$AppConfig.audio2text,
				para: {
					audioBase64: base64
				},
				success: (res) => {
					if (res.audiocont == 'null') {
					uni.showToast({
							title: '未识别到您的语音,请重试',
							icon: 'error'
						});
						this.customerText = '';
					} else {
						this.customerText = res.audiocont;
					}
				},
				fail: (err) => {
					uni.showModal({
						title: '提示',
						content: err,
						showCancel: false
					});
				}
			});
		})
		.catch((err) => {
			console.error(err);
		});
},
6、音频转base64
blobToBase64(blob) {
	return new Promise((resolve, reject) => {
		const reader = new FileReader();
		reader.readAsDataURL(blob);
		reader.onload = () => {
			const base64 = reader.result.split(',')[1];
			resolve(base64);
		};
		reader.onerror = () => {
			reject(new Error('blobToBase64 error'));
		};
	});
	}
}

到了这里,关于uniapp 开发H5页面,实现语音识别功能--前端,不包含后端转换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp - 实现可拖动悬浮按钮功能,支持手指拖曳放到页面任意位置(详细示例源码及注释,复制粘贴快速植入)全端兼容H5/app/小程序!

    百度搜的代码都太难用了而且有bug。。。 本文详细讲解在uniapp中实现一个可拖动的悬浮按钮,并且兼容在 H5/app/小程序中完美运行, 你可以直接复制源码,复制到你的项目中,附带 全局组件注册 的方法(要不每个页面都需要引一次), 如下图所示,你自己修改样式就行了,

    2023年04月08日
    浏览(36)
  • 前端开发中基于Web Speech API(speechSynthesis接口)实现文字转语音功能

    一、Web Speech 的概念及用法 在开发业务系统时,有时候可能需要使用语音播报一段文字。 目前文字转语音即语音合成技术现在已经很成熟了,像百度、讯飞等都提供了相关的服务,支持将文字转换成各种形式的语音,通常这些服务都需要付费使用,如果对语音要求不高,并且

    2024年01月24日
    浏览(44)
  • uniapp 开发 APP 使用 web-view 引入H5 app与 h5 页面通信

    uniapp 可以同时兼容 APP 和 H5,但有时候有些功能在 APP 中实现不了而在 H5 中可以实现,就可以采用 web-view 的方式在 APP 模式下显示 H5 页面。但是 APP 和 H5 储存的参数是不能共享的,例如token,就涉及到 APP 与 H5 之间的参数传递。 H5 向 APP 传参:引入 webview.js ,调用 uni.postMes

    2024年02月13日
    浏览(37)
  • uniapp写公众号h5开发 附件上传 下载功能

    一。 uni-app实现文件上传功能 目前,找到一款第三方插件 文件上传插件地址 https://ext.dcloud.net.cn/plugin?id=1015 将插件下载并导入项目中直接拿来使用,插件市场也有对改插件用法的描述。 用法: 1. 以下代码写于根目录下第一个view顶部或跟在自定义导航栏后面 2.在使用的页面引

    2024年02月11日
    浏览(39)
  • uniapp开发WebRTC语音直播间支持app(android+IOS)和H5,并记录了所有踩得坑

    1. 创建自己的语音直播间 2. 查询所有直播间列表 3.加入房间 4.申请上位 5.麦克风控制 6.声音控制 7.赠送礼物(特效 + 批量移动动画) 8.退出房间 1.uniapp 实现客户端H5、安卓、苹果 2.webRTC实现语音直播间(具体原理网上有很多文章我就不讲了,贴个图) 3.使用node.js搭建信令服

    2024年02月19日
    浏览(33)
  • uniapp开发小程序H5页面顶部导航栏navigationBar如何隐藏?三种解决办法

    方法1:在pages.json 原生小程序也可以采用类似的方法去掉顶部,让头部变透明 小程序页面顶部导航栏navigationBar如何隐藏、变透明?_你挚爱的强哥的博客-CSDN博客 小程序顶部的白色背景条就不见了,直接变透明,只剩下右上角的胶囊按钮。 https://s-z-q.blog.csdn.net/article/details/13

    2024年02月13日
    浏览(42)
  • 关于uniapp开发h5,前端字体包过大的问题

    ui给的字体包足足23.52M,还让前端压缩,让人头大…… 我在网上找了好久,这篇文章比较靠谱,但是讲的并不仔细,文章链接: 第一步:下载安装压缩工具、没有问题 npm install -g font-spider ttc2ttf @hayes0724/web-font-converter 第二步:字体文件转换为ttf格式 # 源字体文件 otf 格式 ,注

    2024年01月21日
    浏览(81)
  • uniapp H5 实现地图选址功能

    这段时间因为项目中使用到地图选址,由于第一次在uniapp中使用地图选址功能,全部都是网上查找相关资料,遇到很多坑,后面自己从新利用map组件写了一个,下面方法列出来,uniapp腾讯地图key申请与部署就不写了,自行百度,仅供参考 方法一 腾讯地图官网地图官网地图选

    2024年02月06日
    浏览(28)
  • 免费的语音识别 API:简单实现语音转文本功能

    语音识别技术在现代信息处理和人机交互中扮演着重要角色。如果您正在寻找免费的语音识别 API,那么您来对地方了!本文将向您介绍一个简单的方法来实现语音转文本的功能,并提供相应的源代码供参考。 首先,您需要使用 Python 编程语言来实现这个功能。Python 提供了许

    2024年02月03日
    浏览(46)
  • uniapp实现将页面转换成pdf(小程序、app、h5)

    使用html2Canvas和jspdf 安装这两个 uniapp在小程序无法获取dom,app端可在renderjs中获取 dom,小程序需要使用web-view导入一个h5页面,实现转pdf H5和小程序 其中通过web-view导入到微信小程序的话,需要导入微信的sdk 在index.html中导入也不知道咋回事,有wx,但是wx.miniProgram是undefined 然

    2024年02月08日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包