我最近安装了Voce并在我的Java应用程序中使用它。在Eclipse中,我将voce-0.9.1 / voce-0.9.1 / lib中的JAR文件添加到Java Build Path中的库中。从文档中,我认为这段代码应该可以工作:
import voce.SpeechSynthesizer;
public class Test
{
public static void main(String[] args)
{
// System.out.println("Speaking");
SpeechSynthesizer speaker = new SpeechSynthesizer("speaker");
speaker.synthesize("hello");
// System.out.println("Spoken");
speaker.destroy();
}
}
当我取消注释输出语句时,程序输出" Speaking",然后几乎立即输出"语音"没有发出声音。我的音量调高了。 synthesize()说字符串还是忘记了一些初始化?你能给我一些应该工作的代码吗?
答案
这是有效的代码(我在SpeechInterface中使用静态方法而不是SpeechSynthesizer对象):
public class Test
{
public static void main(String[] args)
{
voce.SpeechInterface.init("../../../lib", true, false, "", "");
System.out.println("Speaking");
voce.SpeechInterface.synthesize("hello");
System.out.println("Spoken");
try { Thread.sleep(1000); } catch(Exception ex) {}
voce.SpeechInterface.destroy();
}
}