java语音播报案例
在做项目的过程中,我们往往会用到语音播报——把文字转换成语音播放出来,自动识别语言进行播报,那么我们现在来看看怎么操作:
1.下载jacob.jar,下载地址:这里
2.32位操作系统下载:jacob-1.17-M2-x32.dll,64位操作系统下载:jacob-1.17-M2-x64.dll,下载地址:这里
3.将jacob.jar考到项目中进行构建路径。
4.将jacob-1.17-M2-x32.dll或者jacob-1.17-M2-x64.dll,考到系统盘:\Windows\System32\下面。
5.将jacob-1.17-M2-x32.dll或者jacob-1.17-M2-x64.dll,考到JDK安装目录的bin下面。
然后写个test方法测试一下即可,测试代码如下:
/**
* @Title: Voice.java
* @Package org.util
* @Description: TODO该方法的主要作用:
* @author A18ccms A18ccms_gmail_com
* @date 2017-7-3 下午9:03:45
* @version V1.0
*/
package cn.bdqn.bdqn.utils;import org.junit.Test;import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;/** * * 项目名称:avoice * 类名称:Voice * 类描述: 语音播报工具类* 创建人:Mu Xiongxiong * 创建时间:2017-7-3 下午9:03:45 * 修改人:Mu Xiongxiong * 修改时间:2017-7-3 下午9:03:45 * 修改备注: * @version * */
public class Voice {/*** * @Title: strat* @Description: 该方法的主要作用:朗读* @param @param content* @param @param type 设定文件 0:开始,1停止* @return 返回类型:void * @throws*/public void strat(String content, int type) {// ?? 这个Sapi.SpVoice是需要安装什么东西吗,感觉平白无故就来了ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");// Dispatch是做什么的?Dispatch sapo = sap.getObject();if (type == 0) {try {// 音量 0-100sap.setProperty("Volume", new Variant(100));// 语音朗读速度 -10 到 +10sap.setProperty("Rate", new Variant(1.3));Variant defalutVoice = sap.getProperty("Voice");Dispatch dispdefaultVoice = defalutVoice.toDispatch();Variant allVoices = Dispatch.call(sapo, "GetVoices");Dispatch dispVoices = allVoices.toDispatch();Dispatch setvoice = Dispatch.call(dispVoices, "Item",new Variant(1)).toDispatch();ActiveXComponent voiceActivex = new ActiveXComponent(dispdefaultVoice);ActiveXComponent setvoiceActivex = new ActiveXComponent(setvoice);Variant item = Dispatch.call(setvoiceActivex, "GetDescription");// 执行朗读Dispatch.call(sapo, "Speak", new Variant(content));} catch (Exception e) {e.printStackTrace();} finally {sapo.safeRelease();sap.safeRelease();}} else {// 停止try {Dispatch.call(sapo, "Speak", new Variant(content), new Variant(2));} catch (Exception e) {System.out.println(e.getMessage());e.printStackTrace();}}}/*** * @Title: test* @Description: 该方法的主要作用:执行朗读内容* @param 设定文件 * @return 返回类型:void * @throws*/@Testpublic void test(){strat("语音朗读的内容", 0);}}
java语音播报案例相关推荐
- java实时语音通话案例_java语音播报案例
在做项目的过程中,我们往往会用到语音播报--把文字转换成语音播放出来,自动识别语言进行播报,那么我们现在来看看怎么操作: 1.下载jacob.jar,下载地址:这里 2.32位操作系统下载:jacob ...
- java语音播报天气_Home Assistant系列 -- 自动语音播报天气
在树莓派上要让 Home Assistant 发声朗读 ,从硬件上我们需要 3.5mm插口音箱(耳机)或usb口音箱(耳机).软件方面 我们需要一个媒体播放器以及 tts ( 将文字转化为语音的服务 ...
- java语音播报源代码_详解Android 语音播报实现方案(无SDK)
本文介绍了详解Android 语音播报实现方案(无SDK),分享给大家,具体如下: 功能描述 类似支付宝收款时候的语音播报功能:当别人扫描你的收款码,你收到钱之后,就会听到"支付宝到账12. ...
- java语音播报天气_语音播报实时天气
一. 让文本变成声音 .Net里面自带了一个语音类库:System.Speech,调用系统的语音功能,就能实现string到语音的转换,很简单(记得先把电脑音量调大一下): //Add System. ...
- java 文字转换成语音 代码_java文字转语音播报功能的实现方法
前言 本文主要给大家分享了关于java文字转语音播报的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 方法如下 一.pom.xml引入jar包依赖 com.hynnet ja ...
- 案例分享——智能手表(全套解决方案:生理监测、久坐提醒、来电提醒、OTA、无线通信、语音播报、长时间待机等)
[系列专栏]:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! <QT开发实战> <嵌入式通用开发实战> <从0到1学习嵌入式Linux开发> <A ...
- Python实战案例,tkinter+random模块,实现课堂随机抽选提问并语音播报学生姓名
前言 今天给大家介绍Python实现课堂随机抽选提问并语音播报学生姓名实战案例,废话不多说直接开整~ 开发工具 Python版本: 3.8 相关模块: tkinter模块 time模块 random模 ...
- JAVA小功能语音播报功能
JAVA小功能实现----语音播报功能 来点关注吧 1.先创建一个staticTools类添加如下代码 2.导入jacob.jar包 然后进行window配置 3.复制如下代码到staticTools ...
- 关于java使用jacob进行语音播报时报错:com.jacob.com.ComFailException: Can‘t get object clsid from progid
关于java使用jacb进行语音播报时报错:com.jacob.com.ComFailException: Can't get object clsid from progid 出现此错误一般是由于w ...
最新文章
- 女人口口相传的快乐和语气
- 收集 48 个 JavaScript 代码片段,仅需 30 秒就可理解(值得收藏)
- CSS中position的absolute和relative用法
- android mp4语音识别,怎样用语音识别将一段视频转化为文字, 比如:百度的语音识别api...
- 鸿蒙应用学习笔记01:搭建鸿蒙应用开发环境
- css3--弹性布局
- java spring多数据源配置文件_基于注解实现SpringBoot多数据源配置
- 数据结构与算法 —— 向量的扩容策略与分摊时间复杂度
- 为什么要进行URL编码!!!
- Park 变换 系数2/3的由来
- 如何将网页另存为PDF
- AVP的商业化之路还有多远?
- Machine Translation and Datasets - 机器翻译与数据集(RNN循环神经网络)
- 第五届世界互联网大会 乌镇新“网事” 世界新期待
- 网络技术与应用概论(上)——“计算机网络”
- 问题 D: 扑克牌排序(结构体)
- 校招----字节跳动客户端一面
- ring0层下实现的文件强制删除
- word文档生成PDF文档时候自动生成书签方法
- linux下rm无法删除文件夹,在linux下解决rm: cannot remove : Operation not permitted 无法删除文件...