一、项目场景:项目上在开发pda语音播放文字的需求,文字来源于后端接口,文字内容不固定,使用环境为内网;
二、设备类型:PDA手持,一般PDA的语音包都不支持中文,所以要使用第三方的语音包,其他市场上常见的手机的TTS语音包都是支持中英文播报的。
三、pda语音播放的实现方案有以下几种:
-
使用在线平台将文字转语音Mp3,使用uni.createInnerAudioContext播放mp3音频
问题:此方案最简单,但项目中的文字内容不固定,不适合此方案
-
使用百度API实现实时文字转语音播报(百度PAI短文本转语音)TTS,也就是使用百度免费的在线语音功能
在uni-app中使用百度API实现实时文字转语音播报(百度PAI短文本转语音)TTS - 掘金 (juejin.cn)
问题:此方案需要网络环境,项目现场为内网,也不适合此方案
-
使用第三方的离线语音包,具体实现思路如下:
四、实现思路
-
pda上需要下载第三方离线语音包,安装应用程序,原因是因为目前市场上的PDA的文字转语音(TTS)输出是Pico TTS,但是Pico TTS自带安装语音数据包不含中文,因此我们需要含有中文的离线语音包
[相关免费的安卓语音引擎TTS]Android文字转语音引擎(TTS)简单比较及下载_android tts 引擎_yingchengyou的博客-CSDN博客
链接: pan.baidu.com/s/1gJLHPDiS… 提取码: ww25 复制这段内容后打开百度网盘手机App,操作更方便哦
-
pda设置TTS
honeywell的设置如下:
设置—>系统—>语言和输入法->高级—>文字转语音(TTS)输出—>点击首选引擎—> 选择讯飞语记
urovo的设置如下:
设置—>语言和输入法->文字转语音(TTS)输出—> 选择讯飞语记
-
下载MT-TTS离线语音合成Demo
-
下载MT-TTS插件地址
-
把nativeplugins文件夹拷贝到项目根目录下面
-
配置manifest.json文件,——> APP原生插件配置——>MT-TTs语音合成
-
MT-TTS离线语音合成Demo运行到真机需要制作自定义基座
-
运行项目到自定义基座
-
最终效果