Ich bin neu bei Android, ich muss ein Projekt zu tun, die ich brauche, um eine App zu erstellen, die verwendet werden kann, um Sprachbefehle zu erhalten. Ich muss die Stimme des Benutzers aufnehmen, speichern Sie es als Audio Datei dann in Text konvertieren oder einfach direkt in Textdatei konvertieren, ohne Audiodatei zu speichern.Umwandlung Stimme in Text auf Android
Dies ist, was ich bisher getan worden,
public class VoiceRecognitionDemo extends Activity{
private static final int REQUEST_CODE = 1234;
private ListView wordsList;
/**
* Called with the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.voice_recog);
Button speakButton = (Button) findViewById(R.id.speakButton);
wordsList = (ListView) findViewById(R.id.list);
// Disable button if no recognition service is present
PackageManager pm = getPackageManager();
List<ResolveInfo> activities = pm.queryIntentActivities(
new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0);
if (activities.size() == 0)
{
speakButton.setEnabled(false);
speakButton.setText("Recognizer not present");
}
}
/**
* Handle the action of the button being clicked
*/
public void speakButtonClicked(View v)
{
startVoiceRecognitionActivity();
}
/**
* Fire an intent to start the voice recognition activity.
*/
private void startVoiceRecognitionActivity()
{
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Voice recognition Demo...");
startActivityForResult(intent, REQUEST_CODE);
}
/**
* Handle the results from the voice recognition activity.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == REQUEST_CODE && resultCode == RESULT_OK)
{
// Populate the wordsList with the String values the recognition engine thought it heard
ArrayList<String> matches = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
wordsList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,
matches));
}
super.onActivityResult(requestCode, resultCode, data);
}
}
Ich brauche dieses Array zu sortieren, bestimmte Schlüsselwörter zu extrahieren um eine Aktion auszulösen. Wie trigger ich bestimmte Aktion (Ex - einen Anruf auf Phrasen Anruf initiieren, sprechen Sie mit)?
Der Aufbau von Siri oder Google Voice könnte etwas schwierig sein. – ifly6
ich weiß :( aber es ist die Sache, die ich tun muss, nicht so fortgeschritten wie sie.aber sehr einfach ein – Vishwa
Sie können von hier beginnen - Rede zu Text-Tutorial: http://www.androidhive.info/2014/07/android-rede-to-text-tutorial/ – MorZa