In Android 4.1 können Sie Echtzeit-Sprach-zu-Text-Konvertierung mit der Mikrofonoption auf keyboard erhalten.Wie verwenden Sie Android Echtzeit-Sprache zu Text?
Ich habe in der Dokumentation für android.speech versucht, um herauszufinden, wie Echtzeit-Sprache in Text für eine Anwendung zu implementieren. Die einzige Option, die dies erleichtern würde, ist die Option "EXTRA_PARTIAL_RESULTS" (die der Server bei jeder Verwendung ignoriert).
Der Code:
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, "VoiceIME");
intent.putExtra(RecognizerIntent.EXTRA_PARTIAL_RESULTS, true);
intent.putExtra(RecognizerIntent.EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS, 3000L);
mSpeaker.startListening(intent);
kehrt niemals Teilergebnisse.
Ich weiß, dass dies möglich ist, da die Tastaturversion es konsequent macht. Wer weiß wie?
was meinst du ‚Vorauswahl‘ auf das Mikrofonsymbol? Gibt es eine Möglichkeit, dies programmatisch zu tun? – Patrick
können Sie versuchen, den tatsächlichen Schlüssel in den IME-Schnittstellen zu finden und eine "berührte" auf der Taste, die mit dem Mikrofon überlagert ist, auslösen. Ich habe diesen Ansatz nicht verwendet, weil es so viel einfacher war, die Tastatur anzuzeigen und darauf zu warten, dass der Benutzer die Mikrofontaste berührt. könnte auch tun: getSpeechRecognizer(). StartListening (SpeechRecognizer.createSpeechRecognizer (this)); –
Sieht nicht möglich ohne einige schwerwiegende Hacker ... IME-Schnittstelle ist nur für das System verfügbar, so dass ich denke nicht möglich, Instanz des IME aus der App zu bekommen. Ich benutze readRec, einfach nicht möglich, erweiterte Voice-to-Text mit ihm wie mit der Tastatur zu tun. – Patrick