gpt4 book ai didi

java - 使用 freeTTS 语音时无法播放 gif - Java

转载 作者:行者123 更新时间:2023-12-01 04:18:34 24 4
gpt4 key购买 nike

我正在使用 freeTTS 说出一些文本,在后台我想要一个动画 gif 继续播放当我尝试这样做时:一旦声音开始说话,背景中的图像就会被挂起,即使我将其保留在其他 JFrame 中......并且在语音完成后它开始移动。我希望它能够正常运行而不会暂停。我将一个动画 gif 导入到我的应用程序中,并将图标更改为标签属性中的该图像,从而将其放置在标签中。

编辑这是我的代码:

 private void RandomjBActionPerformed(java.awt.event.ActionEvent evt) {                                         
Voice voice;
voice = voiceManager.getVoice(VOICENAME);
voice.allocate();
voice.speak("Daksh");
}

我实际上使用了很多 setVisible、setText、整数声明,对它们进行计算,但我已经删除了它们以简化代码以便您理解。如果执行的话仍然会出现同样的问题。

通过以下代码从另一个按钮单击按钮“RandomjB”​​:

final Timer timer = new Timer(zad, new ActionListener() {
int tick = 0;

@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Success" + ++tick);
RandomjB.doClick();
final int col = Integer.parseInt(t3.getText());;
if (tick >= col) {
((Timer) e.getSource()).stop();
for(int g=0; g<col; g++){
jButton2.setVisible(true); // Check Button -> Visible

}
}

}
});



timer.setInitialDelay(0);
System.out.format("About to schedule task.%n");
timer.start();
System.out.format("Task scheduled.%n");

最佳答案

如果没有代码,很难说清楚,但是我假设您在唯一的 Swing 线程中循环语音合成,因此只要语音循环正在进行,就会阻止所有类型的窗口更新。

正如 Shaun Wild 所说:您需要使用第二个线程来进行语音循环。

关于java - 使用 freeTTS 语音时无法播放 gif - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19201264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com