Android 文字转语音播放实现

1,TextToSpeech类是android自带的,但是部分设备需要支持TTS需要增加语音库,我使用的是讯飞语音(离线的哦)。请自行下载并安装讯飞语音APK,然后到系统设置中设置TTS功能默认使用该选项。有自带TTS库的可以省略该步骤。

2,定义TTS对象

private TextToSpeech mTextToSpeech=null;

3,调用,每次调用都需要初始化

 try{final String strSpeekNow = strSpeek;mTextToSpeech=new TextToSpeech(this, new TextToSpeech.OnInitListener() {@Overridepublic void onInit(int status) {if (status==TextToSpeech.SUCCESS) {//设置朗读语言int supported=mTextToSpeech.setLanguage(Locale.CHINESE);if ((supported!=TextToSpeech.LANG_AVAILABLE)&&(supported!=TextToSpeech.LANG_COUNTRY_AVAILABLE)) {CardManager.toast(VerificationResultActivity.this, "不支持当前语言!");}}//设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规mTextToSpeech.setPitch(1.0f);//设置语速mTextToSpeech.setSpeechRate(1.3f);mTextToSpeech.speak(strSpeekNow, TextToSpeech.QUEUE_FLUSH, null, null);}});} catch (Exception e) {//语音播报出错Log.e("tts",e.toString());}

4,在onDestroy中关闭TTS

        if (mTextToSpeech!=null) {mTextToSpeech.shutdown();//关闭TTS}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/107270.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring-MVC的文件上传下载,及插件的使用(让项目开发更节省时间)

目录 一、概述 ( 1 ) 介绍 ( 2 ) 讲述 二、上传 三、下载 四、jrebel的使用 五、多文件上传 给我们带来什么收获 一、概述 ( 1 ) 介绍 Spring MVC的文件上传下载是指在Spring MVC框架中实现文件的上传和下载功能。文件上传是指将本地计算机上的文件上传到服务器端…

圆的反演 hdu 4773

欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击。 题目大意 http://acm.hdu.edu.cn/showproblem.php?pid4773 给定2个不相交的圆以及圆外1点P。求过P并且与另两个圆相切(外切)的圆&#xff0c…

解决2K/4K高分屏下Vmware等虚拟机下Kail Linux界面显示问题

问题现象 在我们日常使用VirtualBox、Vmware workstation、Hyper-V等虚拟机安装使用Kali系统,在2K/4K高分辨率电脑下Kali系统界面显示太小,包括各种软件及命令终端字体均无法很直观的看出,影响我们的正常测试及使用。 常规处理思路 很多人…

软件设计师_计算机组成与体系结构

计算机组成与体系结构 文章目录 1.1 数据的表示1.1.1 进制的转换1.1.2 原码 反码 补码 移码1.1.3 浮点数运算 1.2 计算机结构1.3 Flynn分类法1.4 CISC和RISC1.5 流水线技术1.6 存储系统1.7 总线系统1.8 可靠性1.9 校验码 1.1 数据的表示 1.1.1 进制的转换 R进制转十进制 --&g…

【深度学习】Mini-Batch梯度下降法

Mini-Batch梯度下降法 在开始Mini-Batch算法开始之前,请确保你已经掌握梯度下降的最优化算法。 在训练神经网络时,使用向量化是加速训练速度的一个重要手段,它可以避免使用显式的for循环,并且调用经过大量优化的矩阵计算函数库。…

Pytest系列-内置标签skip和skipif 跳过测试用例的详细使用(5)

简介 skip和skipif,见名知意就是跳过测试,主要用于不想执行的代码,标记后,标记的代码不执行。希望满足某些条件才执行某些测试用例,否则pytest会跳过运行该测试用例实际常见场景:根据平台不同执行测试、跳…

VirtualBox宿主机和虚拟机文件互传设置

一、如图1、2、3步骤,设置共享粘贴板和拖放为双向 二、 在启动的虚拟机设置的里面,安装增强插件,然后重启虚拟机。 三、在网络位置就可以看到了

Linux调试器gdb

目录 一、关于Linux调试器gdb 二、gdb的操作 1、quit 2、l 3、r 4、b行号 info b 5、d断点编号 6、n 7、p[变量名] 8、s 9、bt 10、finish 11、display[变量名] 12、until行号 13、c 14、disable/enable断点编号 一、关于Linux调试器gdb 首先,我们…

简简单单教你如何用C语言实现获取当前所有可用网口!

一、获取本机所有可用网卡名 原理: 在 Linux 系统中,/proc 目录是一个位于内存中的伪文件系统。 /proc目录是内核提供给我们的查询中心,通过查询该目录下的文件内容,可以获取到有关系统硬件及当前运行进程的信息,如…

全栈工程师必须要掌握的前端CSS技能

作为一名全栈工程师,在日常的工作中,可能更侧重于后端开发,如:C#,Java,SQL ,Python等,对前端的知识则不太精通。在一些比较完善的公司或者项目中,一般会搭配前端工程师&a…

海外商城小程序如何开发

随着全球化的发展和人们对跨境购物的需求逐渐增加,海外商城小程序成为了众多电商平台的重要组成部分。本文将深入探讨如何搭建海外商城小程序,从技术实现到用户体验设计,为开发者提供专业且有深度的思考,以帮助他们打造出色的跨境…

U3D外包开发框架及特点

U3D(Unity3D)是一款流行的跨平台游戏开发引擎,用于创建2D和3D游戏以及交互性应用程序。U3D有许多常用的开发框架和库,这些框架和库可以扩展其功能,使开发人员更轻松地构建游戏和应用程序。以下是一些常用的U3D开发框架…