Android 文件转语音TTS输出(文字转语音)

一、介绍

目录

一、介绍

二、配置

三、使用

四、权限

五、补充


目前国内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应用。

 

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

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

相关文章

将文本转为语音文件的各种TTS

1.jacob 在百度上搜索大部分结果都是它,支持中文, 但是不支持linux系统, github上给的文件是.dll, 这是个windows系统的文件 2.FreeTTS 这是我最开始找到的插件, 得益’于ChatGPT的推荐, 我在这个插件上耗了半天的时间, 但是它确实不支持中文, (事实上用它写代码也有不少坑, 给…

paddlespeech asr语音转录文字;sherpa 实时、离线、rtsp流语音转录

1、paddlespeech asr语音转录文字 参考&#xff1a; https://github.com/PaddlePaddle/PaddleSpeech 安装后运行可能会numpy相关报错&#xff1b;可能是python和numpy版本高的问题&#xff0c;我这里最终解决是python 3.10 numpy 1.22.0&#xff1b; pip install paddlepadd…

共享硬盘没有权限访问计算机,Win7系统打开磁盘共享说“没有访问权限

在操作win7系统的时候经常会在局域网中共享磁盘&#xff0c;方便其他用户访问共享资料等等&#xff0c;但是有win7用户说自己打开磁盘共享提示说“没有访问权限”&#xff0c;这是怎么回事&#xff1f;针对这个情况&#xff0c;下面小编就给大家讲讲解决的办法吧。 具体方法如下…

linux添加用户到附属组无权访问

目标&#xff1a;首先在root 超级用户权限下创建admin 和test俩个账号&#xff0c;然后用test用户访问admin用户的文件。 Linux创建新用户admin useradd admin passwd admin 为admin用户配置密码&#xff08;root管理员模式下必须指定给那个用户创建密码&#xff09; 同理在创建…

打印机扫描显示服务器拒绝访问,打印机拒绝访问,教您打印机拒绝访问怎么解决...

在办公的时候&#xff0c;很多时候都会使用打印机共享的功能&#xff0c;这样大家打印文件就方便很多了。而打印机的连接经常会出现很多问题&#xff0c;其中windows无法连接到打印机&#xff0c;拒绝访问&#xff0c;最为常见&#xff0c;也最为棘手&#xff0c;下面&#xff…

计算机没有u盘权限,访问u盘提示没有权限怎么解决,u盘无权访问的解决方法

在我们利用u盘从计算机中拷贝文件的时候弹出提示“需要管理员权限”&#xff0c;这是怎么回事呢&#xff1f;访问u盘提示没有权限怎么解决&#xff1f;今天&#xff0c;小编在这就教大家通过u盘属性设置来解决没有访问权限的问题。 具体的设置方法&#xff1a; 1、u盘连接上电脑…

你当前无权访问该文件夹 解决你当前无权访问该文件夹拒绝你访问该文件夹

我 这样就完成了 http://www.xitonghe.com/jiaocheng/windows7-5642.html https://jingyan.baidu.com/article/4b52d702aa01b3fc5c774b1b.html Win10正式版提示你当前无权访问该文件夹怎么办 https://jingyan.baidu.com/article/4b52d702aa01b3fc5c774b1b.html 1407345人看了…

访问ftp服务器不显示文件夹权限问题,访问ftp服务器显示无权限问题

访问ftp服务器显示无权限问题 内容精选 换一换 无法访问httpd文件服务器的下一级目录,提示无权限访问。查看系统中的日志(/etc/httpd/logs/error_log或var/log/httpd/error_log),发现selinux权限处于打开状态,没有权限访问/var/www/html/entry目录;报错日志内容:SELinux p…

打印机共享无法访问该计算机,共享打印机拒绝访问怎么办详细解决方案

在办公室经常要用到打印机&#xff0c;而一般都是大家共用一台打印机&#xff0c;它的连接方式属于共享打印机&#xff0c;而有时候我们会遇到共享打印机拒绝访问&#xff0c;这又是什么原因呢&#xff1f;其实原因很简单&#xff0c;那就是共享的权限问题&#xff0c;我们只需…

kibana设置账号密码 - nginx配置访问权限

kibana设置账号密码 一、背景二、实现修改配置文件主要配置这两项配置登陆用户帐号密码 三、效果如下 一、背景 kibana默认没有访问的权限控制&#xff0c;如果需要设置访问的账号密码&#xff0c;可以使用nginx配置代理来发布kibana。 二、实现 修改配置文件 server {liste…

因为计算机限制无法访问U盘,U盘拒绝访问怎么办解决教程

U盘使用过程中&#xff0c;莫名其妙的问题还是有很多的&#xff0c;其中最奇怪的就是出现U盘拒绝访问的问题&#xff0c;然后就无法打开U盘了&#xff0c;里面的资料也拷贝不出来&#xff0c;对于这种问题怎么办呢&#xff1f;下面就教大家解决。 方法一、排除是U盘问题还是系统…

Linux共享后无权限访问,Samba服务无权限访问

在CentOS上配置Samba服务好几天了,总是出现在Windows资源管理器中无法访问的问题: 开始总以为是我的smbpasswd -a root命令没有将用户加进去,之后添加/删除重复了不知多少次,还是不管用,把linux和Windows的防火墙都关闭了之后,还是不管用,便全面开始samba的服务配置,一步步操作…

win10提示“你当前无权访问该文件夹“的解决方法

今天删除文件夹的时候遇到了“你当前无权访问该文件夹”的提示&#xff0c;选择【继续】没用。 解决方法如下&#xff1a; step 1&#xff1a; 右键该文件夹&#xff0c;选择【属性】。 step 2&#xff1a; 选择【安全】栏——【高级】。 step 3&#xff1a; 【更改】 step 4&…

计算机提示无法访问手机tf卡,SD卡无法访问解决教程

SD卡在使用时间长了以后&#xff0c;出现问题是很常见的情况&#xff0c;而如果sd卡插到手机上或者电脑上显示sd卡无法访问的话&#xff0c;这种情况就比较麻烦了&#xff0c;当然也分情况&#xff0c;如果运气好只是逻辑损坏可以很轻松修复好&#xff0c;如果是物理损坏就希望…

访问控制

访问控制 访问控制基础自主访问控制模型强制访问控制模型基于角色的访问控制模型特权管理基础设施 访问控制基础 ◆理解访问控制的概念、作用及访冋控制模型的概念 访问控制基础 ◆什么是访问控制 ◆为用户对系统资源提供最大限度共享的基础上&#xff0c;对用户的访问权进行管…

您当前无权访问该文件夹

问题&#xff1a; 电脑重新做系统后&#xff0c;双击访问原硬盘上的资料文件夹&#xff0c;弹出对话框&#xff0c;无法访问&#xff0c;点击继续后无效 解决&#xff1a; 1.新建*.txt文件 2.复制粘贴下文到.txt文件中 Windows Registry Editor Version 5.00  [HKEY_CLAS…

Windows10无权访问该文件夹解决办法

我在重新安装操作系统后&#xff0c;有几个旧的文件夹由于参与了共享文件&#xff0c;莫名导致文件夹的用户访问权限错乱&#xff0c;根本原因是文件夹的访问权限无法识别新的系统用户&#xff0c;文件夹出现如下图的提示&#xff1a;“你当前无权访问该文件夹”。 如果右键点击…

win10解决你当前无权访问该文件夹,拒绝你访问该文件夹

问题&#xff1a; win10系统中&#xff0c;有时打开一个文件夹&#xff0c;会提示“你当前无权访问该文件夹”&#xff0c;“拒绝你访问该文件夹”。 解决方法&#xff1a; 首先选中这个文件夹右键属性&#xff0c;在属此处性界面&#xff0c;点击安全页签。 然后进入高级&a…

百度站长平台"添加站点"提示"您无权访问该页面,点击确定按钮返回首页?"

大家在百度站长平台“添加站点”、“抓取诊断”的时候&#xff0c;是否遇到“您无权访问该页面&#xff0c;点击确定按钮返回首页”问题。小编也遇到过这种情况&#xff0c;现在问题已解决&#xff0c;把解决方法免费分享出来。 百度站长平台提示“您无权访问该页面&#xff0c…

你无权访问该计算机,解决“您当前无权访问该文件夹”的问题

在使用Windows 10工作时会遇到形形色色的问题&#xff0c;比如访问文件夹显示“您当前无权访问该文件夹”。那么如何进行故障排除呢&#xff1f;下面小编与你分享具体步骤和方法。 工具/材料 Windows 10操作系统 操作方法 01启动Windows 10操作系统&#xff0c;如图所示。点击任…