我想知道如何对语音引擎进行配置更改。例如,我想降低阅读文本的速度,在男性和女性声音之间交换,甚至为不同的语言提供支持。有人能帮我提供这些信息吗。提前致谢:)
[下面是我目前使用的代码(礼貌:一个写得很好的android TTS基本博客),所有变量都已经声明我没有复制整个代码,这个代码片段工作得很好。]
btnSpeak = (ImageButton) findViewById(R.id.ttsIB);
btnSpeak.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
speakOut();
}
});
@Override
public void onDestroy() {
// to shutdown TTS
if (tts != null) {
tts.stop();
tts.shutdown();
}
super.onDestroy();
}
@Override
public void onInit(int status)
{
if (status == TextToSpeech.SUCCESS)
{
int result = tts.setLanguage(Locale.US);
if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED)
{
Log.e("TTS", "This Language is not supported");
}
else
{
btnSpeak.setEnabled(true);
speakOut();
}
}
else
{
Log.e("TTS", "Initilization Failed!");
}
}
private void speakOut()
{
String text = textVal.getText().toString();
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}
我在几年前使用过TTS,并记得,没有太多的配置可能性。
有一个有用的方法SetEngineBypackageName(String packageName)
。
一些TTS引擎对每个语音都有单独的包名。例如,使用Loquendo,您需要编写tts.setEngineBypackagename(“com.Loquendo.tts.susan”)
,您的应用程序将与美国语音Susan对话。
tts.setEngineByPackageName("com.svox.pico");
tts.setLanguage(Locale.US);
我已经查看了语音识别的Android示例,但我并不真正了解它应该做什么或它是如何工作的。在清单中没有任何类型的主要活动要运行,因此当我在手机上安装该应用程序时,我无法运行它。 我还试图找到一个简单的语音到文本的示例,它将语音作为输入并在屏幕上输出文本。这样我就可以研究它来看看它是如何工作的,但是我在网上找不到任何展示它的示例。
Android谷歌语音转文本SDK,语音录制由SDK控制。我需要将其设置为手动按钮,用于启动和停止语音录制,以便将语音转换为文本。例如:当单击按钮开始语音识别时,它会继续录制音频,直到单击停止按钮。但在android SDK中,它会自动停止录制并将录制的音频传递给处理。
问题内容: 我开发了可以识别普通话语音,然后生成文本的android应用程序。但是我找不到怎么做。有人可以给我示例其他语言(普通话,法国等)的语音识别代码吗? 问题答案: 您可以在调用识别器时设置RecognizerIntent.EXTRA_LANGUAGE。 因此,简体中文的示例为:
我想在我的应用程序中转换语音到文本...对于这个,我正在使用识别监听器界面一切正常,但如何更新和显示文本,即使说话(像在谷歌现在语音搜索) 我已经设置了识别意图。EXTRA_PARTIAL_RESULTS,为真,并且还使用了识别监听器界面的onPARAL结果(Bundle arg()方法来设置文本通过语音识别完成后立即显示整个文本,但是我希望实时文本在用户说话时显示 我的活动 怎么让这一切发生
我跟着这首短裙:https://jbinformatique.com/2018/02/16/android-speech-to-text-api-google-tutoriel/ 它工作得很好!它使用android.speech.识别意图包,它是免费的,它可以在没有互联网的情况下工作,正如这里提到的: Android语音到文本API(识别器意图)和Google Cloud Speech API之间
带有en-us语音的AVSpeechsynthesizer是“A”的发音,是“大写字母A”,但只想要“A”,怎么能做到呢?