我写这段代码:
Intent voiceSearchIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
voiceSearchIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
startActivityForResult(voiceSearchIntent, 1);
我想检测所说语句的语言。但是,当我运行意图时,它只收听英语(美国)语言:
是否可以在泛型模式下运行Intent并检索口语句子?
非常感谢。
答案 0 :(得分:2)
不,这是不可能的。语音重新聚合算法的设计方式只适用于单一语言。
您必须自己创建语言检测解决方案,例如,您可以运行使用CMUSphinx创建的手工语音识别器,并在已解码的音素序列上应用分类器以获取语言。有更高级的语言识别算法,请参阅初始链接的评论:
http://www.cslu.ogi.edu/HLTsurvey/ch8node9.html
这不是一件容易的事,它绝对不健壮。为用户提供可供选择的语言列表会更容易。