Hallo,
ich habe versucht eine Sound-Datei einzubinden, mir wird auch kein Fehler angezeigt, nur wenn ich es ausführe bekomme ich nen riesigen Error:
Es sagt, dass ich ein Datiformat habe, dass nicht unterstützt wird, im Internet habe ich aber recherchiert und da haben es andere mit dem selben Befehl und der selben Dateiart hinbekommen.
Meine Klasse:
Vielen Dank für die Hilfe!
ich habe versucht eine Sound-Datei einzubinden, mir wird auch kein Fehler angezeigt, nur wenn ich es ausführe bekomme ich nen riesigen Error:
Java:
javax.sound.sampled.UnsupportedAudioFileException: File of unsupported format
at java.desktop/javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source)
at MouseListner.mouseClicked(MouseListner.java:17)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Window.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue.access$600(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Meine Klasse:
Java:
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.File;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.DataLine;
public class MouseListner implements MouseListener {
@Override
public void mouseClicked(MouseEvent e) {
try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("rsc/Schuss.wav"));
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 p){ p.printStackTrace(); }
HuhnEins huhn = new HuhnEins();
int xPos = e.getX()+10;
int yPos = e.getY()-15;
int hbX1 = HuhnEins.hitbox[0]; int hbY1 = HuhnEins.hitbox[1]; int hbX2 = HuhnEins.hitbox[2]; int hbY2 = HuhnEins.hitbox[3];
System.out.println("x: " + xPos + ", y:" + yPos);
System.out.println(hbX1 + " " + hbY1 + " " + hbX2 + " " + hbY2);
if(xPos >= hbX1 && xPos <= hbX2 && yPos >= hbY1 && yPos <= hbY2) {
System.out.println("getroffen");
} else {
System.out.println("daneben");
}
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
}