讯飞语音合成 简单使用
2015-06-12 18:21
211 查看
最近用到了,讯飞语音,所以简单给大家介绍一下怎么加入语音朗读;
Step 1:
首先你需要申请一个 appid,去讯申请吧;
Step 2:
按照文档导入sdk,加入权限;
Step 3:
初始化sdk;
初始化即 创建 语音配置对象 语音配置对象 ,只有初始化 ,只有初始化 ,只有初始化 后才可以使用 后才可以使用 后才可以使用 MSC MSC的各项 服务 。建议 将初始化放 将初始化放 在程 序入口处 (如 、activity 的 onCreate方法 ,一般是放在 Application 里), 方法), 初始化代码如下:
SpeechUtility.createUtility(SpeechApp.this, "appid=" + “你申请的KEY”));
OK;
下面按照demo:
// 初始化合成对象
mTts = SpeechSynthesizer.createSynthesizer(this, mTtsInitListener);
//设置参数
// 清空参数
mTts.setParameter(SpeechConstant.PARAMS, null);
// 根据合成引擎设置相应参数
if(mEngineType.equals(SpeechConstant.TYPE_CLOUD)) {
mTts.setParameter(SpeechConstant.ENGINE_TYPE, SpeechConstant.TYPE_CLOUD);
// 设置在线合成发音人
mTts.setParameter(SpeechConstant.VOICE_NAME,voicer);
}else {
mTts.setParameter(SpeechConstant.ENGINE_TYPE, SpeechConstant.TYPE_LOCAL);
// 设置本地合成发音人 voicer为空,默认通过语音+界面指定发音人。
mTts.setParameter(SpeechConstant.VOICE_NAME,"");
}
//设置合成语速
mTts.setParameter(SpeechConstant.SPEED, "50");
//设置合成音调
mTts.setParameter(SpeechConstant.PITCH, "50");
//设置合成音量
mTts.setParameter(SpeechConstant.VOLUME,"50");
//设置播放器音频流类型
mTts.setParameter(SpeechConstant.STREAM_TYPE,"3");
// 设置播放合成音频打断音乐播放,默认为true
mTts.setParameter(SpeechConstant.KEY_REQUEST_FOCUS, "true");
// 设置合成音频保存路径,设置路径为sd卡请注意WRITE_EXTERNAL_STORAGE权限
mTts.setParameter(SpeechConstant.PARAMS,"tts_audio_path="+Environment.getExternalStorageDirectory()+"/test.pcm");
完成,给它文字,他就可以说话了;
//这里填写的内容就是会被 朗读的内容
String sayContext = "你想做什么?";
int code = mTts.startSpeaking(sayContext, mTtsListener);
就是这么简单,我把demo,再简化了一下,更适合初学者看;
退出时记得:
mTts.stopSpeaking();
// 退出时释放连接
demo 代码见:
http://download.csdn.net/detail/q610098308/8800713
Step 1:
首先你需要申请一个 appid,去讯申请吧;
Step 2:
按照文档导入sdk,加入权限;
Step 3:
初始化sdk;
初始化即 创建 语音配置对象 语音配置对象 ,只有初始化 ,只有初始化 ,只有初始化 后才可以使用 后才可以使用 后才可以使用 MSC MSC的各项 服务 。建议 将初始化放 将初始化放 在程 序入口处 (如 、activity 的 onCreate方法 ,一般是放在 Application 里), 方法), 初始化代码如下:
SpeechUtility.createUtility(SpeechApp.this, "appid=" + “你申请的KEY”));
OK;
下面按照demo:
// 初始化合成对象
mTts = SpeechSynthesizer.createSynthesizer(this, mTtsInitListener);
//设置参数
// 清空参数
mTts.setParameter(SpeechConstant.PARAMS, null);
// 根据合成引擎设置相应参数
if(mEngineType.equals(SpeechConstant.TYPE_CLOUD)) {
mTts.setParameter(SpeechConstant.ENGINE_TYPE, SpeechConstant.TYPE_CLOUD);
// 设置在线合成发音人
mTts.setParameter(SpeechConstant.VOICE_NAME,voicer);
}else {
mTts.setParameter(SpeechConstant.ENGINE_TYPE, SpeechConstant.TYPE_LOCAL);
// 设置本地合成发音人 voicer为空,默认通过语音+界面指定发音人。
mTts.setParameter(SpeechConstant.VOICE_NAME,"");
}
//设置合成语速
mTts.setParameter(SpeechConstant.SPEED, "50");
//设置合成音调
mTts.setParameter(SpeechConstant.PITCH, "50");
//设置合成音量
mTts.setParameter(SpeechConstant.VOLUME,"50");
//设置播放器音频流类型
mTts.setParameter(SpeechConstant.STREAM_TYPE,"3");
// 设置播放合成音频打断音乐播放,默认为true
mTts.setParameter(SpeechConstant.KEY_REQUEST_FOCUS, "true");
// 设置合成音频保存路径,设置路径为sd卡请注意WRITE_EXTERNAL_STORAGE权限
mTts.setParameter(SpeechConstant.PARAMS,"tts_audio_path="+Environment.getExternalStorageDirectory()+"/test.pcm");
完成,给它文字,他就可以说话了;
//这里填写的内容就是会被 朗读的内容
String sayContext = "你想做什么?";
int code = mTts.startSpeaking(sayContext, mTtsListener);
就是这么简单,我把demo,再简化了一下,更适合初学者看;
退出时记得:
mTts.stopSpeaking();
// 退出时释放连接
demo 代码见:
http://download.csdn.net/detail/q610098308/8800713
相关文章推荐
- External Links Module 友情链接模块
- crontab:自动执行的周期性工作
- External Links Module 友情链接模块
- 随写
- PL/SQL的存储过程和函数
- c++中虚函数和多态性
- 针对电信乌龙事件的深度测试: 广州电信错误将深圳地区189的号码在3G升级4G申请时从广州网厅发货,造成深圳用户收到4G卡后无法激活,深圳电信找不到订单
- sql Server 重复数据的查询,删除
- 高德LBS+的勾搭之下 58到家劈腿阿里?
- Linux GCC常用命令
- bootstrap中的modal 模态弹出框不能放在 form_for里面,一弹出modal会自动submit掉form
- makefile 基础中的基础
- jquery实现图片放大,缩小,翻转,旋转小实例
- 实现Activity的滑动返回效果
- 在Linux系统上安装数据库监控程序Bugzilla的方法
- 减肥减不掉的“乌龙指”/恐龙难道是笨死的?
- HDU 5258(水暴力)
- rpm包下载地址 ftp://rpmfind.net/linux/
- 10-12
- mock.js 生成假数据 前端独立于后台开发