gpt4 book ai didi

java .wav 多次播放后播放失败

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:22:15 26 4
gpt4 key购买 nike

我有一个要播放的 .wav 文件。我正在使用这段代码:

public static synchronized void play(String path) {     
try {
URL soundUrl = SoundTools.class.getResource(path);
AudioInputStream stream = AudioSystem.getAudioInputStream(soundUrl);
AudioFormat format = stream.getFormat();
DataLine.Info info = new DataLine.Info(Clip.class, format);
Clip clip = (Clip) AudioSystem.getLine(info);
clip.open(stream);
clip.start();
}
catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
}
}

代码在一段时间内运行良好,但在大约 30 次回放后,我得到一个 javax.sound.sampled.LineUnavailableException。错误消息显示 unable to obtain a line。我相信这与系统资源有关,但我不知道如何修复它。

最佳答案

您永远不会关闭 Clip,它是 Line 的子类,这就是您收到此错误的原因。使用 close 方法(这样您可以释放资源)完成后关闭剪辑

clip.close();

关于java .wav 多次播放后播放失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27484606/

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