加载和播放声音时会出现延迟

时间:2014-11-05 06:16:43

标签: java audio lag

我写了一个小小的声音课,我可以发出声音并切换它和东西,但我不是太大,我不得不至少暂时废弃它。我尝试了一个小方法来加载声音并播放它然后当它结束卸载它。但它会导致很多滞后。我以前上过的课程就像我能看到的那样做同样的事情,但它没有正确地丢弃声音,而且声音不再加载。继承我的方法,这导致了超级滞后,但正在努力应该做什么。我需要帮助改进它。

    public static void runOnce(final String location) {
            try {
            File audioFile = new File(Game.gameFolder + "/sounds/" + location);
            final AudioInputStream audioStream = AudioSystem.getAudioInputStream(audioFile);

            AudioFormat format = audioStream.getFormat();

            DataLine.Info info = new DataLine.Info(Clip.class, format);

            final Clip audioClip = (Clip) AudioSystem.getLine(info);

            audioClip.open(audioStream);
            audioClip.start();

            new Thread(new Runnable() {
                public void run() {
                    while (audioClip.isActive()) {}
                    try {
                    audioClip.close();
                    audioStream.close();
                    } catch (Exception e) {}
                }
            }).start();

            } catch (Exception e) {}
    }

0 个答案:

没有答案