① 如何調用android的文字轉語音
雖然視覺上的反饋通常是給用戶提供信息最快的方式,但這要求用戶把注意力設備上。當用戶不能查看設備時,則需要一些其他通信的方法。Android提供了強大的文字轉語音Text-to-Speech,TTS API。使開發者能夠在應用中添加語音通知和其他語音反饋功能,而不要求用戶看著屏幕。
下面的代碼展示了如何使用TTS API:
public class TextToSpeechDemo implements TextToSpeech.OnInitListener {
private final TextToSpeech mTextToSpeech;//TTS對象
private final ConcurrentLinkedQueue mBufferedMessages;//消息隊列
private Context mContext;
private boolean mIsReady;//標識符
public TextToSpeechDemo(Context context){
this.mContext=context;//獲取上下文
this.mBufferedMessages=new ConcurrentLinkedQueue();//實例化隊列
this.mTextToSpeech=new TextToSpeech(this.mContext,this);//實例化TTS
}
//初始化TTS引擎
@Override
public void onInit(int status) {
Log.i("TextToSpeechDemo",String.valueOf(status));
if(status==TextToSpeech.SUCCESS){
int result = this.mTextToSpeech.setLanguage(Locale.CHINA);//設置識別語音為中文
synchronized (this){
this.mIsReady=true;//設置標識符為true
for(String bufferedMessage : this.mBufferedMessages){
speakText(bufferedMessage);//讀語音
}
this.mBufferedMessages.clear();//讀完後清空隊列
}
}
}
//釋放資源
public void release(){
synchronized (this){
this.mTextToSpeech.shutdown();
this.mIsReady=false;
}
}
//更新消息隊列,或者讀語音
public void notifyNewMessage(String lanaugh){
String message=lanaugh;
synchronized (this){
if(this.mIsReady){
speakText(message);
}else{
this.mBufferedMessages.add(message);
}
}
}
//讀語音處理
private void speakText(String message){
Log.i("liyuanjinglyj",message);
HashMap params=new HashMap();
params.put(TextToSpeech.Engine.KEY_PARAM_STREAM,"STREAM_NOTIFICATION");//設置播放類型(音頻流類型)
this.mTextToSpeech.speak(message, TextToSpeech.QUEUE_ADD, params);//將這個發音任務添加當前任務之後
this.mTextToSpeech.playSilence(100,TextToSpeech.QUEUE_ADD,params);//間隔多長時間
}
}
當然一般手機是不支持中文的可以網路下載訊飛TTS引擎後在測試。
由於TTS引擎的初始化是非同步的,所以在執行實際的文字轉語音之前需要把消息放到隊列中。
可以給TTS引擎發送多個參數。前面展示了如何決定口語消息使用的音頻流。在這種情況下,通知聲音也使用相同的音頻流。
最後,如果處理連續多個消息,最好在每個消息結束後暫停一會在播放下一個消息。這樣做會清楚的告訴用戶消息的結束和開始。
② baiduTTS在手機里是什麼
就叫TTS文件夾,是有語音王功能的手機建立的,裡面有一個文件是Resource.irf。有這個文件,手機就能朗讀簡訊之類的東西,但前提是手機要支持語音王功能,而且Resource.irf文件能為手機識別,一般來說,不同的手機有不同的Resource.irf文件,但是有些手機還是能共用一個Resource.irf文件的。
③ 什麼軟體可以把文字朗讀出來
可以把文字朗讀出來的軟體有朗讀大師、文字轉語音播音系統、屏幕取字朗讀。
1、朗讀大師
朗讀大師[JcTextSpeech]採用微軟公司(Microsoft)最先進的.NET語言開發,是一款功能強大的文本朗讀軟體。
2、文字轉語音播音系統
文字轉語音播音系統為一款把文字轉換成語音的朗讀軟體,是一款會說話的軟體,只要輸入文字就可以轉換為語音,並且可以把文字轉換成MP3保存到電腦上。
3、屏幕取字朗讀
屏幕取字朗讀為一款Android平台的應用。支持版本:2.2及以上版本。
(3)訊飛語音ttsandroid擴展閱讀
朗讀大師採用先進的TTS語音合成技術,支持多種語音庫,能流暢地朗讀中英文混合文本。該軟體適用操作系統:Win2000、WinXP、Win2003、Vista、Windows 7操作系統。
文字轉語音播音系統可以朗讀任意的中文、英文、韓文、日文等文字內容,效果清晰、流暢、自然。支持男聲、女聲等多種音色,可以根據喜好自由選擇。提供播放、暫停、停止功能,讓文字也可以自由朗讀。背景音樂可以自由更換、讓朗讀效果更具特色。支持文本文件的導入,滿足多方面需求。
④ android 里有沒提供文字轉語音的類
Android手機本身是沒有提供語音轉換的,但是可以通過第三方SDK來實現。
自從蘋果推出Siri以後,語音助手類的功能就成為了大家關注的熱點,不少開發商也紛紛製作出自家的語音助手類應用。特別是經過這兩年的發展和完善,已經出現了不少相當方便好用的中文語音助手,以下挑選了其中比較出色的幾款應用:
1.訊飛語點
訊飛語點是由科大訊飛推出的一款中文語音助手。通過它可以實現語音撥打電話、發簡訊、查找和新建聯系人、設置提醒、查詢天氣、聽新聞、打開及搜索應用、周邊地理信息查詢、路線搜索、上網搜索、翻譯、聊天等多種功能。
2.網路語音助手
只看名字就知道這款語音助手應用來自網路。與多數語音助手類似,通過語音操作,用戶可以實現打電話、發簡訊、提醒設置、音樂播放、天氣查詢、航班查詢、周邊地理信息查詢、股票查詢、語音智能聊天等功能。
3.搜狗語音助手
搜狗語音助手有一個包含了本地生活信息、地圖、網路知識、便民工具查詢、新聞、圖片等信息的智能檢索庫,用戶可以通過語音提問的方式快速或者精準的回答。此外當然也少不了語音撥打電話、發簡訊、放音樂、定鬧鈴等一系列的手機語音操作功能。
4.蟲洞語音助手
「蟲洞」在基本功能上與其他同類語音助手類似,同樣可以用語音進行手機的部分操作以及在線查詢各種豐富的信息。
5.智能360
智能360同樣使用了Google和科大訊飛提供的語音識別技術,而中文語義解析則是其自主研發的引擎。在功能上同樣具備了智能聊天、備忘提醒、發簡訊、打電話、發微博、定位、查菜譜、查天氣、查新聞、應用刪除及下載、媒體播放、16種語言翻譯等等智能化功能。
以上幾款都有提供開發者中心有提供示例代碼,需要到相關官網注冊開發者帳號,所以作為用戶而言還是需要根據自己的具體需求來進行選擇。
⑤ 使用微信語音合成介面(TTS)
2017-04-19 遇到的一點小問題
APP的收款功能,需要語音播報收到的個別推送消息。聽說這個叫TTS(TextToSpeech)。
網上看了一下安卓自帶的 android.speech.tts.TextToSpeech ,試了試,很麻煩,會彈出選擇對話框,而且米2S試了下,返回 SUCCESS ,但就是沒聲音。。。
好吧,測試正常了,試一下效果。
和demo里的操作一樣,沒什麼要特別注意的。除了使用SpeechSynthesizer.shareInstance().start(str)時,返回的int可能等於20109,這是因為微信開放平台AppID寫錯或包名簽名不對。這個文檔沒寫,要注意。
剛關掉網路試了一下,沒有網路會返回-100。又去看了文檔,才發現這個微信也是需要網路的。。。汗!換訊飛試試看