我一直在尝试在我的 Applet 上处理声音,而不是尝试所有不同的方法,在 Java 中播放声音的最佳方法是什么?有几个要求:
- 需要能够循环
- 需要能够从归档 JAR 中加载 WAV(我认为使用 getClass().getResource)
- 需要能够同时播放多个声音,而不是剪辑已经播放的声音
非常感谢您看我的问题,希望你们有答案!
感谢出色的帮助,我几乎可以使用它:
public class MyGame() {
Clip bullet;
public void init(){
try {
bullet = AudioSystem.getClip();
URL url2 = this.getClass().getResource("bulletSound.wav");
AudioInputStream ais2 = AudioSystem.getAudioInputStream( url2 );
bullet.open(ais2);
} catch (LineUnavailableException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedAudioFileException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
randomMethodToPlayBullet(){
bullet.setFramePosition(0);
bullet.start();
}
}
问题是会播放子弹声音,但是如果连续两次调用 randomMethodToPlayBullet ,则在第一个子弹声音完成之前,不会播放第一个子弹。