# Musik Bibliothek für GUI



## Java20134 (29. Dez 2014)

Hallo, 
Ich suche schon lange nach einer guten Bibliothek um Sounds (wav, mp3, ...) abzuspielen. Diese sollte für eine GUI geeignet sein. Könntet ihr mir eine gute Bibliothek nennen? 

Danke schon einmal im Voraus.


----------



## Gucky (30. Dez 2014)

GUI Kompatibilität musst du selber implementieren aber vielleicht ist die Java Sound API etwas für dich.


----------



## Java20134 (30. Dez 2014)

Ich habe die Sound API benutzt und dazu diesen Quellcode geschrieben:

```
public class Musik extends JFrame {

	private static final long serialVersionUID = -8944335417176425492L;
	private JPanel content; 

	public static void main(String[] args) {
		Musik frame = new Musik(); 
		frame.setVisible(true); 
	}
	
	public Musik(){  
		setTitle("Musik");
		setSize(200,200);
		setLocationRelativeTo(null);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		content = new JPanel();
		content.setLayout(null);
		content.setBorder(new EmptyBorder(5,5,5,5));
		setContentPane(content);
		
		playSound(); 
	}
	
	public void playSound(){
		try{
			File file = new File("src/sounds/Jump.wav"); 
			AudioInputStream stream = AudioSystem.getAudioInputStream(file);
			AudioFormat format = stream.getFormat();
			DataLine.Info info = new DataLine.Info(Clip.class, format); //Line beschaffen
			Clip clip = (Clip) AudioSystem.getLine(info); 
			clip.start(); //Clip wird abgespielt ...
		} catch(Exception e){ JOptionPane.showMessageDialog(content, e.getMessage()); }
	}
```
Doch es gibt zwar keine Exception, aber trotzdem kommt kein Ton. Habt ihr eine Idee warum?
PS.: Der File existiert. Ich habe es mit 
	
	
	
	





```
file.exists();
```
 geprüft.


----------



## Gucky (30. Dez 2014)

Sind die Lautsprecher angeschlossen, eingeschaltet und laut genug?
Ist der Ton des Betriebssystems an und laut genug?


----------



## Java20134 (30. Dez 2014)

Ja, dass habe ich alles.


----------



## Java20134 (30. Dez 2014)

Ich habe das Problem auf eine andere Art und Weise gelöst:

```
URL url = getClass().getClassLoader().getResource("sounds/Jump.wav");
AudioClip audio = (AudioClip)Applet.newAudioClip(url);
audio.play();
```


----------



## Anfänger2011 (4. Jan 2015)

Java20134 hat gesagt.:


> Ich habe das Problem auf eine andere Art und Weise gelöst:
> 
> ```
> URL url = getClass().getClassLoader().getResource("sounds/Jump.wav");
> ...



Könntest du die gesamte Lösung einmal Posten ich hab zurzeit ein ähnliches Problem


----------



## Java20134 (4. Jan 2015)

Naja das ist die gesamte Lösung. Ich habe ein Package da habe ich meine ganze Quellcodes drinnen und ein zweites Package namens sounds. In diesem Package sounds ist die wav-Datei: Jump.wav. Und der Rest ist dann nur noch der Quellcode.


----------

