我在我的应用中使用了Android的文本语音转换默认引擎,但是女性的声音听起来像是40岁以上的女性,而且她的声音有些机械人。
我看过其他似乎使用Google内置的TTS的应用程序,但听起来好多了,例如年轻女子声音更自然。
Android主 Google搜索中也使用了这种“自然”的声音,例如当您按一下麦克风并问一个问题(Siri风格),例如“谁是美国总统”时,女人的声音会告诉您答案。
如何在代码中实现这种声音?
基本上,这就是我在代码中所做的:
TextToSpeech tts = new TextToSpeech(this, this);
.
.
.
tts.setLanguage(Locale.US);
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
最佳答案
这是我使用KEY_FEATURE_NETWORK_SYNTHESIS
参数的代码:
HashMap<String, String> onlineSpeech = new HashMap<>();
onlineSpeech.put(TextToSpeech.Engine.KEY_FEATURE_NETWORK_SYNTHESIS, "true");
tts.speak(speech, TextToSpeech.QUEUE_FLUSH, onlineSpeech);