gpt4 book ai didi

java - 使用剪辑无法在Java中播放声音

转载 作者:行者123 更新时间:2023-12-03 02:30:21 25 4
gpt4 key购买 nike

我想使用下面的代码在Java中播放声音。声音是WAV格式的,所以我认为这段代码应该可以正常工作,但是与其播放声音,它什么也没做。我的控制台上甚至没有错误。因此有人可以帮助我使此代码播放声音。 (此声音包含在我的src文件的一个包中)

 public static void main(String[] args) {

new Thread(new Runnable() {

@Override
public void run() {

try {

Clip clip = AudioSystem.getClip();

File file = new File("C:\\Users\\Jovan\\Desktop\\song.wav");

AudioInputStream inputStream = AudioSystem.getAudioInputStream(file);

clip.open(inputStream);

clip.start();

} catch (Exception e) {
e.printStackTrace();
}

}
});
}

最佳答案

您必须等待剪辑播放并结束。您也可以创建一些侦听器,但这更加复杂。当剪辑播放完毕(isActive()为false)时,您结束。

public class P {

public static void main(String[] args) {

new Thread(new Runnable() {

@Override
public void run() {

try {

System.out.println("started");

Clip clip = AudioSystem.getClip();

File file = new File(".......................wav");

AudioInputStream inputStream = AudioSystem.getAudioInputStream(file);

clip.open(inputStream);

clip.start();

while(clip.isOpen()) {
try { Thread.sleep(2000); } catch(InterruptedException ie) {}
if(!clip.isActive()) break;
}

} catch (Exception e) {
e.printStackTrace();
}

}
}).start();
}

}

关于java - 使用剪辑无法在Java中播放声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48735326/

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