Как разработать приложение для распознавания голоса, например, говорящий тома

Как разработать приложение для распознавания голоса, например Talking Tom?
  1. Моя просьба - распознать голос без каких-либо событий, таких как кнопки, события касания)
 2. Все записи записи голоса, содержащие через кнопку, но мое требование распознает голос, когда пользователь разговаривает в это время, записывая голос, и когда пользователь останавливает голос, он автоматически изменяет голос другим голосом, таким как Том или попугай
 3. Я сделал через кнопку

My.java

File storageDir = new File(Environment.getExternalStorageDirectory(), "SRAVANTHI");
storageDir.mkdir();
Log.d(APP_TAG, "Storage directory set to " + storageDir);
outfile = File.createTempFile("hascode", ".3gp", storageDir);

// init recorder
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(outfile.getAbsolutePath());

// init player
player.setDataSource(outfile.getAbsolutePath());

try {
    recorder.prepare();
    recorder.start();
    recording = true;
} catch (IllegalStateException e) {
    Log.w(APP_TAG, "Invalid recorder state .. reset/release should have been called");
} catch (IOException e) {
    Log.w(APP_TAG, "Could not write to sd card");
}

recorder.stop();

для кнопки воспроизведения

try {
    playing = true;
    player.prepare();
    player.start();
} catch (IllegalStateException e) {
    Log.w(APP_TAG, "illegal state .. player should be reset");
} catch (IOException e) {
    Log.w(APP_TAG, "Could not write to sd card");
}

Ответ 1

Как насчет проверки громкости звука сначала, запись только после того, как она превысит определенное значение?

Возможно, это будет полезно: android: определение уровня звука