如何为SpeechRecognizer设置土耳其语言Google SpeechToText APi

时间:2016-06-12 09:54:21

标签: android speech-to-text

在我的应用程序中,我试图创建一个语音识别器,从文本到语音谷歌Api土耳其语并传递EXTRA_LANGUAGE_PREFERENCE作为" tr_TR"识别并返回土耳其语的结果,但是用英语识别而不是土耳其语。

String lang_code="tr_TR";    
recognizerIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
            recognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE,
                    lang_code);
            recognizerIntent.putExtra(RecognizerIntent.EXTRA_ONLY_RETURN_LANGUAGE_PREFERENCE, lang_code);
            recognizerIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE,
                    this.getPackageName());
            recognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
                    RecognizerIntent.LANGUAGE_MODEL_WEB_SEARCH);
            recognizerIntent.putExtra(RecognizerInt

ent.EXTRA_MAX_RESULTS, 3);

2 个答案:

答案 0 :(得分:2)

我在代码中解决了这个问题:

        language = "tr-TR";

        Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, language);
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE, language);
        intent.putExtra(RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES, language);
        intent.putExtra(RecognizerIntent.EXTRA_ONLY_RETURN_LANGUAGE_PREFERENCE, language);
        intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, language);
        intent.putExtra(RecognizerIntent.EXTRA_RESULTS, language);
        startActivityForResult(intent, REQUEST_CODE);

答案 1 :(得分:0)

土耳其语的语言代码是“tr”。以下是我使用它的方式。

Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
    intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "tr");
    intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 1);