Question

I have saw this code somewhere in this area. I want to play the .wav file once but not continuously. How can I do that? I try removing the LOOP_CONTINUOUSLY line but it does not work.

URL url = new URL("http://pscode.org/media/leftright.wav");
                            Clip clip = AudioSystem.getClip();
                            // getAudioInputStream() also accepts a File or InputStream
                            AudioInputStream ais = AudioSystem.
                                getAudioInputStream( url );
                            clip.open(ais);
                            clip.loop(Clip.LOOP_CONTINUOUSLY);
                            SwingUtilities.invokeLater(new Runnable() {
                                public void run() {
                                    JOptionPane.showMessageDialog(null, "Close to exit!");
                                }
                            });

And if possible. Can I play mp3 files as well. Because when I try to replace it as mp3, my code crashes. Also, I want to get the file from my computer. Not on the internet. Can anyone help me?

Was it helpful?

Solution

  • Use clip.start() instead of clip.loop(Clip.LOOP_CONTINUOUSLY)
  • Use File or getResourceAsStream() instead of URL and feed it to getAudioInputStream the same way
  • See this question for mp3 files
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top