gpt4 book ai didi

java - Clip 类适合 'heavy use' 吗?

转载 作者:太空宇宙 更新时间:2023-11-04 14:55:57 24 4
gpt4 key购买 nike

我正在开发一个程序,该程序可以播放一系列 Clip (clip.start()),平均每秒一个。

意味着一个剪辑开始,一秒钟后停止,另一个剪辑开始,依此类推,大约 10 个剪辑。

结果并不“流畅”,有些剪辑甚至无法启动或听不到。

我的问题:Clip 类适合这种事情吗?或者剪辑不应该处理非常频繁的停止和启动?

如果 Clip 不合适,您是否可以为此建议使用替代类或库?或者也许有一些关于如何使用 Clips 的指南,以便我所描述的内容能够流畅地工作? (也许关于线程或其他东西)。

最佳答案

我对 Java 中的音频没有太多经验,但我对 Clips 的体验很差。我发现由于某种原因,重新启动剪辑需要半秒,这是 Not Acceptable (发现了一些与此问题相关的旧错误,显然已修复,但也许在我查看时这是一个新错误进去)。带有缓冲区来保存整个声音的 SourceDataLine 对我来说效果更好。

但是,我建议TinySound ,这是一个有效的简单抽象。

这是他们页面上的示例:

    //initialize TinySound
TinySound.init();
//load a sound and music
//note: you can also load with Files, URLs and InputStreams
Music song = TinySound.loadMusic("song.wav");
Sound coin = TinySound.loadSound("coin.wav");
//start playing the music on loop
song.play(true);
//play the sound a few times in a loop
for (int i = 0; i < 20; i++) {
coin.play();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {}
}
//be sure to shutdown TinySound when done
TinySound.shutdown();

关于java - Clip 类适合 'heavy use' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23201771/

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