Hello!

I write a command line program with java on eclipse. I use this code to get a sound from the beep.wav file. But i can not hear anything from the eclipse.

try
		{
			File curdir = new File (".");
			File soundFile=new File(curdir.getCanonicalPath() + "\\beep.wav");
			Clip clip = AudioSystem.getClip();
			AudioInputStream inputStream = AudioSystem.getAudioInputStream(soundFile);
			clip.open(inputStream);
			clip.start();
			clip.start();
			clip.start();
		}
		catch(Exception e)
		{
			System.out.println("error: " + e.toString());
		}

When i use beep.mp3 it gives me file is not supported format exception. But with wav i don't get any error.

So why it does not play any sound?

Thank you!

Instead of this:

File curdir = new File (".");
File soundFile=new File(curdir.getCanonicalPath() + "\\beep.wav");

try this:

File soundFile = new File(System.getProperty("user.dir") + "\\beep.wav");

As well make sure that "beep.wav" is spelled correctly, it is case sensitive including the extension. (as far as Java is concerned .WAV is different from .wav)

Edited 5 Years Ago by turt2live: n/a

as for the exception, java doesn't support mp3 by default, you would need to get (or write :) ) packages that do that for you.

wav files don't give errors, because they are supported

I research it again.

try
		{
			File curdir = new File (".");
			File soundFile=new File(curdir.getCanonicalPath() + "//beep.wav");
			AudioInputStream stream = AudioSystem.getAudioInputStream(soundFile);      
			DataLine.Info info = new DataLine.Info(Clip.class, stream.getFormat());      
			Clip clip2 = (Clip) AudioSystem.getLine(info);         
			clip2.open(stream);
			clip2.start();
			Thread.sleep(800);
			clip2.close();
		}
		catch(Exception e)
		{
			System.out.println("Can not play the sound file. Error details:" + e.toString());
		}

Now this code works on Windows 7. But it does not work on Linux and it does not give me any error. I just can not hear anything on Linux.

What you suggest?

Thank you!

Edited 5 Years Ago by selma_aktra: n/a

This article has been dead for over six months. Start a new discussion instead.