【TTS】uni-app语音播报app开发 / MT-TTS安卓原生自带语音合成插件(免费无限次)

编程入门 行业动态 更新时间:2024-10-24 06:34:56

什么是TTS?

TTSText To Speech的缩写,即“从文本到语音”,是人机对话的一部分,让机器能够说话。TTS是语音合成应用的一种。

在程序开发中,有很多TTS的插件,比如百度,讯飞,等等,但是大部分产品都不是完全免费无限制次数调用的且需在线使用

本篇文章介绍一种免费快捷且可以离线本地使用的方法:调用安卓系统已安装的TTS进行语音合成播放。

安卓原生自带离线语音合成的使用

1. 安装Android文字转语音引擎

安卓系统本身是有自带语音引擎的,但是有些手机没有,如果没有的话,需要先安装语音引擎apk,可以参考这篇文章下载:Android文字转语音引擎(TTS)简单比较及下载

2. 调用系统已安装TTS插件 (MT-TTS)

在手机上已经有语音引擎的前提下,就可以使用MT-TTS插件进行调用了。

2.1 下载MT-TTS插件

下载地址和使用方法:MT-TTS离线语音合成

可以直接在下载的demo上进行开发,或者把demo里面的nativeplugins文件夹拷贝到自己的项目根目录下

然后把项目用HBuilder X打开,点击manifest.json文件,App原生插件配置,把MT-TTS勾选上,确定

2.2 使用自定义基座打包uni原生插件 (注:请使用真机运行自定义基座)

使用uni原生插件必须先提交云端打包才能生效,所以需要先把原生插件打包到自定义基座,然后再进行写代码真机调试(不知道怎么真机调试的可以看看我这篇文章真机调试)。
运行-》运行到手机或模拟器-》制作自定义调试基座

打包

打包发布
使用自定义基座开发调试uni-app原生插件后,不可直接将自定义基座apk作为正式版发布。
应该重新提交云端打包(不能勾选“自定义基座”)生成正式版本。
自定义基座打包完成后,选择自定义调试基座。


之后,就可以真机运行调试了

2.3 正式使用MT-TTS

插件的demo里面有示例代码,挺详细的,这里对主要使用步骤进行简单说明:
requireNativePlugin导入插件

const TTSSpeech = uni.requireNativePlugin("MT-TTS-Speech");

先进行初始化

<button class="title" size="mini" @click="init">Init TTS</button>
init() {
		console.log('>> TTS:init...')
		SpeechTTS.init((callback) => {
				this.isReady = true;
				console.log('>> tts: init success');
		});

		SpeechTTS.onDone((res) => {
				console.log(">> tts: play end " + res)
		});
},

语音播放

<button class="title" size="mini" @click="play">播放</button>
text: '请。112号、张三,到,C04、检查'
play() {
		console.log('>> tts: play...');
		const res = SpeechTTS.speak({
					text: this.text
		});
		console.log('>> tts: play result = ' + res);
},

其他使用请参考下面的插件API

插件API

  • 初始化 init(options, callback)
  • 设置语调 setPitch(num) 范围 0-9,默认5
  • 设置语速 setSpeed(num) 范围 0-9,默认5
  • 设置语速 setVolumn(num) 范围 0-9,默认15
  • 获取状态 isSpeeking()
  • 播放 speek(text, utteranceId)
  • 播放 changeSpeeker(text) text: F(度小美)、M(度小宇)、Y(度丫丫)、X(度逍遥), 成功返回0
  • 停止合成 stop()
  • 暂停播放 paused()
  • 恢复播放 resume()
  • 销毁 destroy()
  • 开始播放回调注册 (callback)
  • 完成播放回调注册 onDone(callback)
  • 播放出错回调注册 (callback)

本篇文章就介绍到这里啦,祝各位程序员1024程序员节日快乐!

更多推荐

【TTS】uni-app语音播报app开发 / MT-TTS安卓原生自带语音合成插件(免费无限次)

本文发布于:2023-06-13 07:41:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1358076.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:自带   插件   语音   语音合成   uni

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!