我有大约20种不同的声音,我希望它每1秒播放一次。 每个声音的持续时间约为0.7秒。我甚至不知道如何将mp3导入java。我怎么能在java中做到这一点?
更新
try
{
in = new FileInputStream(new File("C:\\Users\\Toshiba\\Downloads\\Music\\adios.wav"));
AudioStream as = new AudioStream(in);
AudioPlayer.player.start(as);
Thread.sleep(1*1000);
} catch (Exception e)
{
JOptionPane.showMessageDialog(null, e);
}
我遇到了新问题。一旦开始我就无法阻止它
答案 0 :(得分:0)
你需要使用javax.sound.sampled
库,其中也可以找到文档here,因为你想播放声音every x
秒,你应该使用
Thread.sleep(x*1000);
。 (x
是您希望计算机等待的秒数。)
如果您提供更多代码,我会更具体。
答案 1 :(得分:0)
使用JavaFX。 It comes with netbeans
TimerTask task = new TimerTask() {
@Override
public void run() {
//MediaPlayer player;
//Media audioFile = new Media(new File("PATH_TO_SOUND"));
//player = new MediaPlayer(audioFile);
//player.play();
FileInputStream in = new FileInputStream(new File("C:\\Users\\Toshiba\\Downloads\\Music\\adios.wav"));
AudioStream as = new AudioStream(in);
AudioPlayer.player.start(as);
}
};
Timer timer;
timer.scheduleAtFixedRate(task, 0, 1000); //start immediately, 1000ms period
进口:
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;