JAVA 实现语音播报
转载:https://blog.csdn.net/xichengqc/article/details/78709724 或 https://pan.baidu.com/s/1Fd5d3dvJ8IGeqxuU-vcN3Q
准备工作:
下载jar包,链接:https://pan.baidu.com/s/1qXPgCzy 密码:xigv
解压jar包,将jacob.jar复制到工程目录,右键该文件→Build Path→Add to...
将jacob-1.17-M2-x86.dll添加到JDK的bin目录和Windows的system32目录(64位系统添加jacob-1.17-M2-x64.dll)
代码实现如下:
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class Test04 {
public static void main(String[] args) {
ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");
try {
// 音量 0-100
sap.setProperty("Volume", new Variant(100));
// 语音朗读速度 -10 到 +10
sap.setProperty("Rate", new Variant(-2));
// 获取执行对象
Dispatch sapo = sap.getObject();
// 执行朗读
Dispatch.call(sapo, "Speak", new Variant("你好,很高兴见到你。"));
// 关闭执行对象
sapo.safeRelease();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭应用程序连接
sap.safeRelease();
}
}
}
进一步,我们可以朗读文件内容,代码实现如下:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class Test05 {
public static void main(String[] args) throws IOException {
ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");
//输入文件
File srcFile = new File("E:/tmp/testvoice.txt");
//使用包装字符流读取文件
BufferedReader br = new BufferedReader(new FileReader(srcFile));
String content = br.readLine();
try {
// 音量 0-100
sap.setProperty("Volume", new Variant(100));
// 语音朗读速度 -10 到 +10
sap.setProperty("Rate", new Variant(-2));
// 获取执行对象
Dispatch sapo = sap.getObject();
// 执行朗读
while (content != null) {
Dispatch.call(sapo, "Speak", new Variant(content));
content = br.readLine();
}
// 关闭执行对象
sapo.safeRelease();
} catch (Exception e) {
e.printStackTrace();
} finally {
br.close();
// 关闭应用程序连接
sap.safeRelease();
}
}
}
出现的问题:
关于java使用jacob.jar调用word的配置问题
最近用到了jacob.jar来转换word文件,出现一些问题都是关于配置的,先将一些配置说明一下,以供大家参考。
文件下载地址,
https://pan.baidu.com/s/1Fd5d3dvJ8IGeqxuU-vcN3Q
jacob-1.17-M2-x64.dll放到C:\Windows\System32下面(64位)
jacob-1.17-M2-x86.dll 放到C:\Windows\SysWOW64下面(32位)
将jacob.dll拷贝至%JAVA_HOME%\jre\bin目录。
再把jacob.jar拷入lib下
重启完成
JAVA 实现语音播报相关推荐
- Java实现语音播报
Java实现语音播报 下载jar包 文件下载路径:https://files.cnblogs.com/files/w1441639547/jacob-1.18-x64.rar 解压后 放置在JDK中 ...
- java语音播报案例
在做项目的过程中,我们往往会用到语音播报--把文字转换成语音播放出来,自动识别语言进行播报,那么我们现在来看看怎么操作: 1.下载jacob.jar,下载地址:这里 2.32位操作系统下载:jacob ...
- java实时语音通话案例_java语音播报案例
在做项目的过程中,我们往往会用到语音播报--把文字转换成语音播放出来,自动识别语言进行播报,那么我们现在来看看怎么操作: 1.下载jacob.jar,下载地址:这里 2.32位操作系统下载:jacob ...
- java 文字转换成语音 代码_java文字转语音播报功能的实现方法
前言 本文主要给大家分享了关于java文字转语音播报的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 方法如下 一.pom.xml引入jar包依赖 com.hynnet ja ...
- 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 ...
- java语音_JAVA 实现语音播报
准备工作: 下载jar包,链接:https://pan.baidu.com/s/1qXPgCzy 密码:xigv 解压jar包,将jacob.jar复制到工程目录,右键该文件→Build Path→A ...
- java语音播报天气_Home Assistant系列 -- 自动语音播报天气
在树莓派上要让 Home Assistant 发声朗读 ,从硬件上我们需要 3.5mm插口音箱(耳机)或usb口音箱(耳机).软件方面 我们需要一个媒体播放器以及 tts ( 将文字转化为语音的服务 ...
- java语音播报源代码_详解Android 语音播报实现方案(无SDK)
本文介绍了详解Android 语音播报实现方案(无SDK),分享给大家,具体如下: 功能描述 类似支付宝收款时候的语音播报功能:当别人扫描你的收款码,你收到钱之后,就会听到"支付宝到账12. ...
最新文章
- Unity 2D游戏开发教程之为游戏场景添加多个地面
- nuke linux 插件,Nuke 插件:镜头光晕 Optical Flares v1.0.86(含预设)Win/Mac/Linux
- bzoj 2251: [2010Beijing Wc]外星联络
- CAS SSO对手机应用支持的一种思路
- push failed in WebIDE
- 生成的数据库脚本没有注释?
- 05. Know what functions C++ silently writes and calls
- 拓端tecdat|R语言MCMC的rstan贝叶斯回归模型和标准线性回归模型比较
- 考研数学备考思路和计划制定
- 发那科服务器显示021,发那科(FANUC)系统报警代码大全
- 概率模型中的 报童问题 matlab求解
- 【vue 四级联动】
- 一分二网线连接器正确使用方法
- java.Net.UnknownHostException异常处理的方法
- 测试管理之绩效考核指标--测试计划+测试用例+测试环境部署工作指标!!!
- GAMS系列分享14——综合能源系统——CHP机组运行区域
- ERP服务器虚拟机,全球首发!Windows Server 2008虚拟机ERP压力测试
- 单节锂电池充放电管理方法、锂电池预充电的作用
- ❤leetcode,python2❤最大子序和
- Android ANR分析-笔记