gpt4 book ai didi

java - Clip.stop() 卡住几秒钟

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

我有一个类 Sample 和 Clip 里面,用 Java 写的。我正在循环播放:

public void play() {
clip.loop(Clip.LOOP_CONTINUOUSLY);
}

我还有一个停止方法:

public void stop() {
clip.stop();
}

我想在使用 Scala 初始化(并开始播放)新的 Sample 实例时停止它。

def setSample = {
if (sample != null) {
sample.stop
}
sample = new Sample(track, this)
if (isPlay == true) {
sample.play()
}
}

问题是,clip.stop() 挂断了几秒钟,所以下一个没有像我预期的那样立即播放。我能用它做什么?为什么会发生?

//编辑

我尝试使用 close() 方法并在 new loop() 之前再次打开剪辑。效果一样。

最佳答案

我不是 Java/声音专家,只是之前做了一些 spike。根据我的测试和文献,Windows 上的 Java Sound API 有一些限制。因此,如果您使用的是 Windows,您可以尝试使用 ASIO 来获得低延迟播放解决方案。请参阅:http://en.wikipedia.org/wiki/Audio_stream_input_output ,特别是您需要 ASIO4ALL 驱动程序和 JAsioHost Java 包装器。

关于java - Clip.stop() 卡住几秒钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7397350/

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