一、介绍

目前国内Android系统自带语音引擎基本上都是Pico TTS,Pico TTS不支持中文转语音播报。因为项目需要播放中文,引入科大讯飞引擎3.0.apk。

二、配置

下载好科大讯飞语音引擎3.0.apk(若是下载小爱,小度等其他引擎也可以),安装成功之后,进入系统设置—>语言输入法设置—>文字转语音(TTS)输出—>选择科大讯飞语音引擎(选择你下载的引擎)。

三、使用

代码很简单,注释很详细,废话不多说,直接上工具类。

package com.welbell.temperature.type.ui;import android.content.Context;
import android.speech.tts.TextToSpeech;
import android.util.Log;import java.util.Locale;public class VoiceAnnouncements implements TextToSpeech.OnInitListener {private static final String TAG = VoiceAnnouncements.class.getName();public static VoiceAnnouncements mVoiceAnnouncements;private TextToSpeech mTextToSpeech;public static VoiceAnnouncements getInstance() {synchronized (VoiceAnnouncements.class) {if (mVoiceAnnouncements == null) {mVoiceAnnouncements = new VoiceAnnouncements();}}return mVoiceAnnouncements;}public void init(Context context) {mTextToSpeech = new TextToSpeech(context, this);}/*** 设置语音播放参数(设置-1将不起作用)** @param pitch      音调* @param speechRate 语速*/public void setParameter(float pitch, float speechRate) {if (mTextToSpeech == null) {return;}if (pitch != -1)//设置音调mTextToSpeech.setPitch(pitch);if (speechRate != -1)//设置语速,1.0为正常语速mTextToSpeech.setSpeechRate(speechRate);}/*** 设置播放内容* 播放语音前需要等初始化成功之后 * @param isCover 是否覆盖式播放* @param text  播放的内容*/public void speak(boolean isCover,String text){if (isCover){mTextToSpeech.stop();}mTextToSpeech.speak(text, TextToSpeech.QUEUE_ADD, null);}/*** 回调函数* @param status*/@Overridepublic void onInit(int status) {//设置朗读语言int supported = mTextToSpeech.setLanguage(Locale.SIMPLIFIED_CHINESE);if ((supported != TextToSpeech.LANG_AVAILABLE) && (supported != TextToSpeech.LANG_COUNTRY_AVAILABLE)) {Log.e(TAG, "onInit: 不支持当前语言");}}
}

四、权限

TTS需要使用文件操作权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <!-- 外部存储读权限 --><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 外部存储写权限 -->

五、补充

第三方引擎APK,需要通过用户手动设置为默认TTS输出,否则不能使用。目前除了改framework层以外,Android上层没有办法修改第三方APK为默认的输出TTS应用。

Android 文件转语音TTS输出(文字转语音)相关推荐

  1. Android App开发语音处理之系统自带的语音引擎、文字转语音、语音识别的讲解及实战(超详细 附源码)

    需要源码请点赞关注收藏后评论区留下QQ~~~ 一.系统自带的语音引擎 语音播报的本质是将书面文字转换成自然语言的音频流,这个转换操作被称作语音合成,又称TTS(从文本到语音)在转换过程中,为了避免机械 ...

  2. 口播神器,基于Edge,微软TTS(text-to-speech)文字转语音免费开源库edge-tts实践(Python3.10)

    不能否认,微软Azure在TTS(text-to-speech文字转语音)这个人工智能细分领域的影响力是统治级的,一如ChatGPT在NLP领域的随心所欲,予取予求.君不见几乎所有的抖音营销号口播均采 ...

  3. html5d调用百度语音,易语言调用百度语音平台实现文字转换语音功能的代码

    调用百度语音平台实现文字转换语音功能 此功能需要加载精易模块5.6 .版本 2 .支持库 wmp9 .程序集 窗口程序集1 .子程序 _试听按钮_被单击 播放器1.地址 = "http:// ...

  4. 【微信小程序】语音播报,文字转语音,使用《微信同声传译插件》

    需要实现的功能是: 输入一段文字,由小程序读出来 步骤如下: 一.小程序添加 "微信同声传译" 插件 添加插件步骤看这篇博===>如何添加插件并配置 二.代码编写 index ...

  5. 【vue 语音播报(文字转语音)】

    vue 语音播报(文字转语音) 1.安装speak-tts包 npm install speak-tts 2.在页面中引入 import Speech from 'speak-tts' 3.初始化以及 ...

  6. 语音计算机管家,文字转语音软件管家 免费版

    文字转语音软件管家由华军小编为你搜集整理,"文字转语音软件管家"致力于向您提供最高品质的语音角色,助您轻松制作各类真人语音资料.语音广告.有需要下载使用文字转语音软件管家的小伙伴们 ...

  7. Android TTS 中文 文字转语音 使用TextToSpeech Svox .

    Android默认没有安装TTS数据包,无法文字转语音,而在设置里推荐的语音包是Pico TTS,并不支持中文,如果需要读中文,需要下载另外的第三方语音包,如:eSpeak,Svox,个人建议Svox ...

  8. Android TTS 中文 文字转语音 使用TextToSpeech Svox

    Android默认没有安装TTS数据包,无法文字转语音,而在设置里推荐的语音包是Pico TTS,并不支持中文,如果需要读中文,需要下载另外的第三方语音包,如:eSpeak,Svox,个人建议Svox ...

  9. android 语音提醒,文字转语音播放

    android本身具有文字转语音播放的TTS,一些第三方的sdk,像百度语音,科大讯飞语音等等都提供了文字转语音播放的功能,但这些第三方sdk大都收费,还挺贵的. 这里推荐两种方法:1.android ...

最新文章

  1. AI一分钟 | 英伟达发布最强核弹—无人车AI芯片DRIVE Xavier;百度硅谷首次开放无人车试乘:上车前要先签免责书
  2. R语言笔记5:控制结构
  3. 《预训练周刊》第19期:歧义短语的类量子语境性研究、自然语言处理中prompt方法的系统综述...
  4. LeetCode:198:打家劫舍
  5. python中可选参数的特征_sklearn特征选择方法及参数
  6. 1.2.3 Using Option Files
  7. 悄悄地进村,打枪的不要——KyuuBackground(原 ItaBackgroundKyuu)改造完成
  8. 日常((⊙_⊙)…)
  9. 输入特定字符和只能输入数字。
  10. syslog(),openlog(),closelog()
  11. ElasticSearch 集群监控
  12. glEnable(GL_DEPTH_TEST)作用
  13. 黑苹果 惠普笔记本电池补丁_黑苹果笔记本:关于DSDT亮度表的分析与修改
  14. bouncing results问题
  15. STM32加密保护工具 | STM32Trust介绍、解决方案
  16. centos虚拟机调皮了
  17. Dojo 1.5 发布说明
  18. lg显示器工厂模式怎么进入_LG液晶显示器进入工厂模式方法.概要
  19. ACM-ICPC 2018 南京赛区网络预赛(ABCDEFGHIJKL所有题题解大全)
  20. 如何添加URL服务器到站点,当URL来自互联网服务器时,如何将自定义css...

热门文章

  1. DISC个性测验(转载)
  2. 正割、余割、正弦、余弦、正切、余切之间的关系的公式 sec、csc与sin、cos、tan、cot之间的各种公式...
  3. 经济金融投资计量与数据分析Python应用
  4. 可达性分析算法与强弱引用
  5. 内网渗透之mimikatz+procdump 提取 Windows 明文密码
  6. EDEM入门学习教程—界面介绍
  7. 约瑟夫环(循环链表)
  8. 用Qt编写STM32烧录软件(ISP模式)
  9. 数据手册中最小值、最大值、典型值三者之间的关系
  10. 已知由一个线性链表表示的线性表中含有 3 类字符的数据元素(如:字母,数字和其他字符),试编写算法将该线性链表分割为 3 个循环链表,其中每个循环链表均只含有一类字符。