首先pom文件中援用依赖
<dependency> <groupId>com.hynnet</groupId> <artifactId>jacob</artifactId> <version>1.18</version> </dependency>
办法:
/** * 门路可本人配置 * @param text 文本内容 * @param value 音量 * @param volueRow 读取速度 * @return 是否胜利 */ public static boolean text(String text, int value,int volueRow){ try { //音频生成门路 String path = "E:\tmp"; //固定音量大小 if (value <0 || value >100){ value = 100; } //调用dll朗诵办法 ActiveXComponent ax = new ActiveXComponent( "Sapi.SpVoice" ) ; //音量 0-100 ax.setProperty("Volume",new Variant(value)); //朗诵速度 ax.setProperty("Rate",new Variant(volueRow)); //输出的语言内容 Dispatch dispatch = ax.getObject(); //执行朗诵 Dispatch.call(dispatch,"Speak",new Variant(text)); //开始生成语音文件,构建文件流 ax = new ActiveXComponent("Sapi.SpFileStream"); Dispatch sfFileStream = ax.getObject(); //设置文件生成格局 ax = new ActiveXComponent("Sapi.SpAudioFormat"); Dispatch fileFormat = ax.getObject(); //设置音频流格局 Dispatch.put(fileFormat,"Type", new Variant(22)); //设置文件输入流格局 Dispatch.putRef(sfFileStream,"Format",fileFormat); //调用输入文件流关上办法,创立一个.wav文件 Dispatch.call(sfFileStream,"Open",new Variant("E:\\tmp\\a.wav"),new Variant(3),new Variant(true)); //设置声音对应输入流为输入文件对象 Dispatch.putRef(dispatch,"AudioOutputStream",sfFileStream); //设置音量 Dispatch.put(dispatch,"Volume",new Variant(value)); //设置速度 Dispatch.put(dispatch,"Rate",new Variant(volueRow)); //执行朗诵 Dispatch.call(dispatch,"Speak",new Variant(text)); //敞开输入文件 Dispatch.call(sfFileStream,"Close"); Dispatch.putRef(dispatch,"AudioOutputStream",null); //close sfFileStream.safeRelease(); fileFormat.safeRelease(); //敞开朗诵的操作 dispatch.safeRelease(); ax.safeRelease(); return true; } catch (Exception e) { e.printStackTrace(); } return false; }
问题:
如果呈现我的项目启动报错 no jacob-1.18-x64 in java.library.path的问题是jdk中短少dll办法须要下载一份到jdk的bin目录下
下载地址:
链接:https://pan.baidu.com/s/1B0_Z...
提取码:mcru