0

Currently I have working speech recognition but RecognizerIntent.EXTRA_PROMPT is shown as text only on mobile as well as on wearable watch.

Is there any way or other option to make prompt to speak (play as audio)?

Have tried VoiceInteraction API but it is limited to picking an option and have to start through one of the system voice command.

    private static final int SPEECH_REQUEST_CODE = 0;

 // Create an intent that can start the Speech Recognizer activity
    private void displaySpeechRecognizer() {
        Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
        intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "How can I help you?");
        // Start the activity, the intent will be populated with the speech text
        startActivityForResult(intent, SPEECH_REQUEST_CODE);
    }

    // This callback is invoked when the Speech Recognizer returns.
    // This is where you process the intent and extract the speech text from the intent.
    @Override
    protected void onActivityResult(int requestCode, int resultCode,
                                    Intent data) {
        if (requestCode == SPEECH_REQUEST_CODE && resultCode == RESULT_OK) {
            List<String> results = data.getStringArrayListExtra(
                    RecognizerIntent.EXTRA_RESULTS);
            String spokenText = results.get(0);
            Log.d(TAG, "spokenText: " + spokenText);
            // Do something with spokenText
        }
        super.onActivityResult(requestCode, resultCode, data);
    }
4

2 に答える 2

0

Androidでオーディオファイルを再生する方法

音声が終わったら、音声認識を開始します。

于 2016-09-14T20:36:30.110 に答える
0

あなたは軌道に乗っていると思います。音声インタラクションを行うには、音声インタラクション API を使用する必要があります。Google Voice Actions は、多くの音声および入力されたアクション リクエストを認識し、Android インテントを作成します。

音声対話 API のビデオ記録によると:

アプリでシステムまたはカスタムの音声操作を使用しているかどうかに関係なく、操作を実行する前にアプリがユーザーにフォローアップの質問をしたい場合があります。たとえば、ユーザーが「音楽を再生して」と言ったときに音楽アプリが起動した後、ユーザーに「どのジャンルですか?」と尋ねたい場合があります。または、ホーム オートメーション アプリは、ユーザーが「OK Google、電気をつけて」と言うのを聞くと、「どの部屋?」と尋ねたいと思うかもしれません。Voice Interaction API を使用すると、Android M アプリで次のようなフォローアップの質問をすることができます。

Codelab では、Voice Interaction API を使用してアプリに音声インタラクションを追加する方法を学びます。Voice Interaction API を使用すると、アプリのユーザーは音声のみを使用してアクションを確認し、オプションのリストから選択できます。

ノート:

Google Voice Interaction API を使用すると、アクティビティは音声を使用してユーザーと対話し、次のような入力を取得できます。

  • アクションを確認します (たとえば、「よろしいですか?」)
  • オプションのリストから選択します

参考文献:

于 2016-09-13T15:17:16.850 に答える