我怎样才能在java中处理声音?

时间:2013-08-03 21:02:15

标签: java audio

好的,所以我有这堂课为我的游戏播放声音:

package sound;
import java.net.URL;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
public class GameSounds 
{
    private static int count = 0;
    public static void play(String path)
    {
        try
        {
            URL audioInStream = GameSounds.class.getResource(path);
            AudioInputStream inputStream = AudioSystem.getAudioInputStream(audioInStream);
            Clip clip = AudioSystem.getClip();
            clip.open(inputStream);
            clip.start();
            if(count > 60)
            {
                clip.stop();
                count = 0;
            }
            count++;
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
}

我有10个级别..并且在第8级或第9级它给出了一个“内存不足”的错误,它告诉我错误来自这个类,我相信它在使用它们之后没有消除声音...所以我的问题是我该怎么做?我尝试使用try catch和final以及clip.dispose(),但显然它没有用完..

1 个答案:

答案 0 :(得分:1)

您未在close()上致电AudioInputStream