如何使用JLayer停止声音

时间:2013-04-19 17:29:02

标签: java audio jlayer

我正在使用JLayer在我的游戏中播放mp3文件,但是我不可能停止播放这首歌。那是我的代码:

public void play(final String sonido) {

    reproduciendo.put(sonido, 1);
    Thread thread = new Thread() {
        public void run() {
            while(reproduciendo.get(sonido)!=null) {
            try {
            Player player = new Player(getSonido(sonido));
            player.play();
            if(player.isComplete()) reproduciendo.remove(sonido);
            } catch(Exception e) {e.printStackTrace();};
        }}
    };

    thread.start();

}


public void stop (String sonido ) {
    reproduciendo.remove(sonido);
}

当我用stop方法删除hashmap“reproduciendo”的歌曲时,它应该停止,但什么也没做,我在这里读过这个方法,但它对我不起作用。你知道另一种方法吗?

2 个答案:

答案 0 :(得分:0)

我不知道您使用的是哪个库,但也许您可以在播放器类中找到“停止”方法。

答案 1 :(得分:0)

看到我对其他类似问题的回答,只播放一个音频帧并检查一个标志是否应暂停或停止播放

https://stackoverflow.com/a/16738486/2094045