# Sound geht nicht



## Pithecanthropus (17. Okt 2009)

Hallo. 


```
package main;

import javax.sound.sampled.*;
import java.io.*;

public class Sound
{
	void soundAbspielen(String dateiPfad)
	{
		try
		{
			AudioInputStream audioInputStream = AudioSystem
					.getAudioInputStream(new File(dateiPfad));
			AudioFormat af = audioInputStream.getFormat();
			int size = (int) (af.getFrameSize() * audioInputStream
					.getFrameLength());
			byte[] audio = new byte[size];
			DataLine.Info info = new DataLine.Info(Clip.class, af, size);
			audioInputStream.read(audio, 0, size);
			Clip clip = (Clip) AudioSystem.getLine(info);
			clip.open(af, audio, 0, size);
			clip.start();
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
	}
}
```

Das sollte eigentlich funktionieren, da es schonmal funktioniert hat, aber es kommt die Fehlermeldung:


```
javax.sound.sampled.LineUnavailableException: no Clip available
   at javax.sound.sampled.AudioSystem.getLine(libgcj.so.90)
   at main.Sound.soundAbspielen(Sound.java:20)
```

kennt jmd. eine geeignete Lösung?


----------



## André Uhres (18. Okt 2009)

pithecanthropusErectus hat gesagt.:


> Das sollte eigentlich funktionieren, da es schonmal funktioniert hat


Versuch's mal mit der Audiodatei, mit der es schonmal funktioniert hat.


----------



## Pithecanthropus (18. Okt 2009)

Das klappt auch nicht. Es müsste am OS liegen, dass es das letzte mal mit einem anderen OS geklappt hat.


----------



## Steev (19. Okt 2009)

Funktioniert es denn irgendeinen Sound abzuspielen (Media Player, usw. ...)?
Wenn das nicht geht, dann kann Java auch keine Sounds abspielen...


----------



## Pithecanthropus (19. Okt 2009)

Sounds kann ich abspielen. Mp3's, Videos, Flash und das gleichzeitig... Nur Java will nicht.


----------



## Steev (19. Okt 2009)

Funktioniert denn das Abspielen desselben Sounds über einen AudioClip?


```
void soundAbspielen(String datei) throws Exception {
  java.applet.AudioClip clip = java.applet.Applet.newAudioClip(new java.net.URL(datei));
  clip.play( );
}
```

Wenn das nicht geht, dann installiere doch deine JDK (JRE) noch einmal neu, vieleicht ist da etwas schief gegangen.


----------



## Pithecanthropus (20. Okt 2009)

Das lag an der Java-version. Ich nutzte die Open-Source Variante. Nach dem ich die Sun-Version installierte, konnte ich das Programm ausführen.


----------

