私はPCアシスタントに取り組んでいます。つまり、PCアシスタントは私の声を認識してフィードバックを提供したり、何かをしたりする必要があります。フィードバックはコンピューターで生成された音声である必要があります。たとえばjavax.speechを使用して、これを実現する方法がJava自体の内部にあることを私は知っています。この音声は実際には高品質ではありませんが、すべての種類のライブラリを必要とせず、使いやすいはずです。私は現在このプロトタイプコードを持っています:
public static void speech(String text) {
if(text.trim() == "")
return;
String voiceName = "kevin16";
try {
SynthesizerModeDesc desc = new SynthesizerModeDesc(null, "general", Locale.US, null, null);
Synthesizer synth = Central.createSynthesizer(desc);
synth.allocate();
synth.resume();
desc = (SynthesizerModeDesc) synth.getEngineModeDesc();
Voice[] voices = desc.getVoices();
Voice voice = null;
for(Voice entry : voices) {
if(entry.getName().equals(voiceName)) {
voice = entry;
break;
}
}
synth.getSynthesizerProperties().setVoice(voice);
synth.speakPlainText(text, null);
synth.waitEngineState(Synthesizer.QUEUE_EMPTY);
synth.deallocate();
} catch(Exception ex) {
String message = " missing speech.properties in " + System.getProperty("user.home") + "\n";
System.out.println("" + ex);
System.out.println(message);
ex.printStackTrace();
}
}
コードを実行するとエラーが発生します。これは、speech.propertiesファイルが見つからないため、usersディレクトリにあるはずです。問題は、このファイルをどこから取得するか、またはこのファイルに何を含めるべきかわからないことです。誰かが私を助けてくれますか?
また、誰かが私に良いスピーチチュートリアルへのリンクを送ってくれるといいのですが、私はウェブを検索しましたが、見つけるのは難しいです!