java语音播报案例
生活随笔
收集整理的這篇文章主要介紹了
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语音播报案例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WRF文件打开方式
- 下一篇: 青铜器之乡是陕西的哪里 青铜器之乡在什么