2016-08-23 54 views
1

我想實現一個使用vocalizer聲音的tts應用程序。我已經下載了很多聲音,並且他們被正確列出了獲取聲音的電話。tts設置聲音使用發聲tts引擎

for(Voice v : engine.getVoices()){ 
} 

但是,當我把它engine.setVoice(v)沒有設置正確,當你下載了語言不止一種聲音。例如

enter image description here

而不是使用選定的語音應用程序(菲奧娜)而改用凱特,如果我換了最愛的聲音在Vocalizer提供的應用程序將使用菲奧娜而不是凱特。如果你已經下載了所有的聲音,這也是一樣的,它總是會選擇在應用程序中選擇的本地聲音的最喜歡的聲音。

我該如何解決這個問題?

+0

什麼是'setVoice()'結果呢?我發現沒有任何TTS提供商正在正確處理新的語音API,而不是Google ... – brandall

+0

0,它是成功的一個,-1是錯誤 – Lawtonj94

+0

在Android文本到語音設置中,是否將語音列爲單獨的引擎? – brandall

回答

1

我測試了這個,可以確認它是一個錯誤。

正如你所說,它會成功切換不同語言環境的聲音,但在嘗試在同一個語言環境中調用setVoice())時,它將默認爲在應用程序中選擇的「最喜歡的」。

當調用getVoice()時,它會返回您嘗試設置的語音,因此無法檢測到它「失敗」,這也令人沮喪。必須在內部改變它在每次調用speak

我對使用的電子郵件關於設置和參考這篇文章來報告錯誤 - 是好,如果你能做到這一點!

+0

會做,很高興知道這不僅僅是我有這個bug。 – Lawtonj94

0

Vocalizer版本2.0.7(2017年8月7日)修正了此問題。

在應用程序設置中有一個名爲「支持最新TTS API」的選項或默認啓用的類似功能。

更新日誌:

重要說明:此更新使用新的語音數據和當前的聲音將被刪除。你將不得不再次

-Upgraded引擎Nuance的Vocalizer提供嵌入式3.0下載聲音,提高質量和穩定性

-8新的語言:智利,博傑普爾語,孟加拉語,卡納達語,馬拉地語,泰盧固語,泰米爾語和克羅地亞

-20新的聲音

-Code優化,以提高響應時間

- 支持Android的文字轉語音API

- 支持Android的7牛軋糖

- 支持新的表情符號的Unicode 8.0和9.0

- 內部的改進和錯誤修正