android中文朗读包,Android 通过手说tts中文语音包实现中文朗读
手说TTS,是Android平台下的中文语音引擎,提供了中文文本到语音的转换。
使用手说TTS进行中文文本的朗读,包括中文简繁体、阿拉伯数字、英文字母及一些符号的混读。并且处理了中文的多音字和音调转换等问题。
开发人员可以使用手说TTS来开发Android平台下需要中文语音的应用程序。
开发准备:
第一步:安装手说TTS安装包
从官网 http://shoushuo.com/sstts.html 下载手说TTS安装包:ShoushuoTTS.apk 。
安装到真实手机或者手机模拟器中。
第二步:下载手说TTS客户类库包
下载手说TTS客户类库包:shoushuotts.jar 。
将该jar文件引入到你的应用中。
第二步:demo实现
xml文件
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:id="@+id/edtSpeectText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="太阳从东边升起,慢慢的露出红彤彤的笑脸。"
/>
android:id="@+id/btnSpeechGo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="开始朗读"
android:onClick="speechText"
/>
package com.zhouzijing.android.demo;
import com.shoushuo.android.tts.ITts;
import com.shoushuo.android.tts.ITtsCallback;
import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
import android.os.Message;
import android.os.RemoteException;
import android.speech.tts.TextToSpeech;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class SpeechActivity extends Activity {
private EditText edtSpeectText;
private Button btnSpeechGo;
private Context context;
private ITts ttsService;
private boolean ttsBound;
/**
* 定义Handler.
*/
private final Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
Toast.makeText(context, " 我的话说完了 ", Toast.LENGTH_SHORT).show();
btnSpeechGo.setEnabled(true);
}
};
/**
* 回调参数.
*/
private final ITtsCallback ttsCallback = new ITtsCallback.Stub() {
//朗读完毕.
@Override
public void speakCompleted() throws RemoteException {
handler.sendEmptyMessage(0);
}
};
/**
* tts服务连接.
*/
private final ServiceConnection ttsConnection = new ServiceConnection() {
@Override
public void onServiceDisconnected(ComponentName arg0) {
try {
//注册回调参数
ttsService.unregisterCallback(ttsCallback);
} catch (RemoteException e) {
e.printStackTrace();
}
ttsService = null;
ttsBound = false;
}
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
ttsService = ITts.Stub.asInterface(service);
ttsBound = true;
try {
//tts服务初始化
ttsService.initialize();
//撤销回调参数.
ttsService.registerCallback(ttsCallback);
} catch (RemoteException e) {
}
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.speech_text);
context = this;
edtSpeectText = (EditText) findViewById(R.id.edtSpeectText);
btnSpeechGo = (Button) findViewById(R.id.btnSpeechGo);
}
/**
* 按钮:朗读.
*
* @param v
*/
public void speechText(View v) {
v.setEnabled(false);
try {
ttsService.speak(edtSpeectText.getText().toString(),
TextToSpeech.QUEUE_FLUSH);
} catch (RemoteException e) {
e.printStackTrace();
}
}
@Override
protected void onDestroy() {
if (ttsBound) {
ttsBound = false;
//撤销tts服务
this.unbindService(ttsConnection);
}
super.onDestroy();
}
@Override
protected void onStart() {
super.onStart();
if (!ttsBound) {
String actionName = "com.shoushuo.android.tts.intent.action.InvokeTts";
Intent intent = new Intent(actionName);
//绑定tts服务
this.bindService(intent, ttsConnection, Context.BIND_AUTO_CREATE);
}
}
}
android中文朗读包,Android 通过手说tts中文语音包实现中文朗读相关推荐
- android 语音播报(通过手说tts 实现中文语音播报)
手说TTS介绍: 关于手说tts中文语音包的详细资料可以查看官网 http://shoushuo.com/index.html 手说TTS,是Android平台下的中文语音引擎,提供了中文文本到语音的 ...
- android 语音播报中文,android 语音播报(通过手说tts 实现中文语音播报)
手说TTS介绍: 手说TTS,是Android平台下的中文语音引擎,提供了中文文本到语音的转换. 使用手说TTS进行中文文本的朗读,包括中文简繁体.阿拉伯数字.英文字母及一些符号的混读.并且处理了中文 ...
- java 语音包_有人开发了马保国语音包
图片来源:百度百科 前不久,马保国火了,他的那句"年轻人要讲武德"已经成为网络上有名的梗. 让人想不到的是,一位程序员甚至开发了他的语音包. 事情是这样的,网友Nanguage在源 ...
- 绝地求生吃鸡李云龙最全语音包大全500多mp3下载
绝地求生吃鸡李云龙最全语音包大全500多mp3下载 李云龙语音包可真是火啊,最近很多人在找李云龙语音包的下载,馆长也不甘落后于大家的热点,于是就找朋友帮忙找到了这个500第一个语音的语音包,这里就分享 ...
- html5audio兼容斗战神,CSGO语音包工具SLAMv1.5.4
CSGO语音包工具SLAMv1.5.4:SLAM全称source live audio mixer,是一款免费和开源的工具,SLAM可让您通过源游戏的内置通信系统分享声音.让你可以在游戏中放歌,放搞笑 ...
- 王者荣耀天赐语音包怎么获得?天赐语音包获取方法介绍
王者荣耀天赐语音包有好几种获取方法,玩家想要得到这个语音包的,可以通过下面游综宅小编提供的攻略去获取,游戏中经常会有各种各样的语音包活动,参与活动就能得到免费的语音包,这次天赐语音包的获取方法下面的攻 ...
- idea 彩虹屁合并语音包,语音包无法使用 解决教程
教程如下: 一.使用语音包教程: 1.资源分享 先放资源,如嫌弃以下教程麻烦,楼主亲自整理合并了原语音包与九尾语音包,链接如下: 语音包下载 2.使用教程: 安装教程这里不再赘述了,相信大家能看到这篇 ...
- 一秒语音是哪个软件_一秒语音包软件下载-一秒语音包app安卓版下载_天尚网
游戏介绍 一秒语音包是一款非常有趣的语音包制作软件,用户可以使用软件进行变声,在游戏的时候随时变音,超清的音质,使用感非常好,还可以在此制作你需要的语音包,超炫特效,让你轻松制作有趣的语音包,感兴趣的 ...
- 语音包软件测试,风某人语音包免费版
风某人语音包免费版是一个非常有趣的语音变声工具,能够让大家快速的改变自己的声音效果,在抖音里面这个语音包也非常的火爆,大家可以利用这个语音包将自己的声音改变成不同的效果,不管你在哪一种场景里面使用都可 ...
- TFBoys语音包上线导航深度娱乐化 高德地图语音导航功能实测
现在人们的出行都越来越离不开手机地图软件,用来面对复杂的道路.难以把握的路况以及如何选择最优路线等.而当我们使用手机地图软件的时候,除了定位.导航规划等这些基本功能外,最重要的就要当属这款软件的语音能 ...
最新文章
- 多目标跟踪:CVPR2019论文阅读
- mybatis转义反斜杠_mybatis like 的坑
- HTML中Select的使用详解
- boundingRect函数
- 包与模块管理及面向对象初步
- panasonic 松下被黑
- rx java定时循环_Rxjava定时器异常循环
- 程序设计基础要用计算机吗,计算机二级公共基础知识|程序设计基础
- OpenGL天空盒skybox
- 计算机基础注电考试用书,注册电气工程师考试试题:计算机基础知识
- 网吧流媒体服务器系统,网吧视频点播服务器架设完全攻略流媒体服务器 -电脑资料...
- python时间序列平稳性检验_Python量化投资基础:时间序列的平稳性检验
- Linux 网卡流量工具详细介绍【转】
- 中国造车要把百年车企按在地上打?你别说,我看有戏。
- Hyper-v安装虚拟机问题(持续更新)
- 空间曲线的切线,法面,密切面,主法线,副法线,从切面,活动标架
- 提升客户服务体验的技巧
- 深度学习优化利器:集成、知识蒸馏和自蒸馏
- ROS控制elfin5机械臂教程
- python模块操作之自动化-从此不愁移机,断网,版本错误,模块缺失......