Sound Problem

Status
Nicht offen für weitere Antworten.

Rave

Bekanntes Mitglied
Hallo,
Also ich habe eine Klasse (soundLib) geschrieben und in dieser sind Methoden zum Abspielen von Sounds und Loops etc....nun hab ich diese in meinen Frame benutzt um dort Sounds abzuspielen.
Code:
[Java]
import java.awt.*;
import java.awt.event.*;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Image;


public class UfoFrame extends Frame implements Runnable, KeyListener, MouseListener{
// Anfang Variablen

// Anfang Attribute
Ufo ufo; Plattform zielPlattform; Plattform2 plattform2; Alien alien; Map map; Baum baum;
Panel cp;
// Menue
Menue menue;
// Sound Library
soundLib slib;
boolean start=false;
// Spielthread
private Thread th;
private int speed=20;
// Variablen für die Doppelpufferung
private Image dbImage;
private Graphics dbg;
private boolean laufen=true;
private Button button2 = new Button();
private Button button1 = new Button();
// Startvar ist für das anzeigen der Menues da
public int startvar=0;
// Auflösungsvar ist zum ändern der Auflösung
public int aufloesungsvar=0;
// Bilder Importieren
Image img=getToolkit().getImage("pics/alienHintergrund.jpg");
Image img3=getToolkit().getImage("pics/alienHintergrundMenue.jpg");
Image img1=getToolkit().getImage("pics/buttonKleinBlau1.jpg");
Image img2=getToolkit().getImage("pics/buttonBlau2.jpg");
Image img4=getToolkit().getImage("pics/hintergrundStage-2.jpg");
Image img5=getToolkit().getImage("pics/levelPassedScreen.jpg");
Image img6=getToolkit().getImage("pics/creditsWallpaper.jpg");
Image img7=getToolkit().getImage("pics/buttonSchwarzCredits1.jpg");
Image img8=getToolkit().getImage("pics/helpWallpaper.jpg");
Image img9=getToolkit().getImage("pics/mond.gif");
Image img10=getToolkit().getImage("pics/GameEndWallpaper.jpg");


// Ende Attribute

// Ende Variablen

public UfoFrame(String title) {
// Frame-Initialisierung
super(title);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) { System.exit(0); }
});
int frameWidth = 1280;
int frameHeight = 670;
setSize(frameWidth, frameHeight);
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
//int x =50+ (d.width - getSize().width) / 2;
//int y =-50+ (d.height - getSize().height) / 2;
int y=10;
setLocation(0, y);
this.setLayout(null);
this.setBackground(Color.lightGray);
// Ende Komponenten

setResizable(false);
setVisible(true);
addKeyListener(this);
addMouseListener(this);
//add(cp);
ufo=new Ufo();
zielPlattform=new Plattform();
plattform2=new Plattform2();
ufo.setPlattform(zielPlattform);
alien=new Alien();
map=new Map();
baum=new Baum();
ufo.setAlien(alien);
menue=new Menue();
// Sounds
slib=new soundLib();
slib.loadSound("explosion","sounds/Explosion.wav");
slib.loadSound("titelsong","sounds/Limp Bizkit - Boiler.mp3");
// Sounds Ende

if (startvar==2 || startvar==6) {
start();
}


// Anfang Komponenten
}

// Anfang Methoden

public void start()
{
// Schaffen eines neuen Threads, in dem das Spiel läuft
th = new Thread(this);
// Starten des Threads
th.start ();
}
public void aufloesungAendern() {
if (startvar!=2 || aufloesungsvar==0) {
int frameWidth = 1280;
int frameHeight = 670;
}
if (startvar!=2 || aufloesungsvar==1) {
int frameWidth = 1650;
int frameHeight = 700;
}
if (startvar==2) {
int frameWidth = 1280;
int frameHeight = 670;
}
}
public void run()
{
if (startvar==2 || startvar==6) {
// Erniedrigen der ThreadPriority um zeichnen zu erleichtern
Thread.currentThread().setPriority(Thread.MIN_PRIORITY);

// Solange true ist läuft der Thread weiter
while (laufen){

try
{
if(ufo.zustand==0)
{
ufo.fliegen();
map.rauchBewegen();
map.wolkenBewegen1();
map.wolkenBewegen2();
update(getGraphics());
}
alien.laufen();
// Stoppen des Threads für in Klammern angegebene Millisekunden
Thread.sleep(speed);
}
catch (InterruptedException ex)
{
// do nothing
}

// Zurücksetzen der ThreadPriority auf Maximalwert
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
}
}
}
public void musik() {
if (startvar>0) {
slib.playSound("titelsong");
}
}
public void update (Graphics g)
{
paint(g);
}

public void paint(Graphics g)
{
// Initialisierung des DoubleBuffers
// Fehlermeldung bei Fehlenden Bildern
if (ClassLoader.getSystemResource("menueBackground")==null) {
System.out.println("Ressource nicht gefunden");
}
if (startvar==0) {
// Startbildschirm
g.drawImage(img,100,0,this);
}
if (startvar==1) {
// Hauptmenue
// Hauptmenue Wallpaper
g.drawImage(img8,0,0,this);
g.setColor(Color.gray);
g.fillRect(40,0,1200,700);
g.drawImage(img3,200,80,this);
g.drawImage(img1,590,200,this);
g.setColor(Color.green);
g.drawString("Start Game",640,225);
g.drawImage(img1,590,250,this);
g.setColor(Color.green);
g.drawString("Help",660,275);
g.drawImage(img1,590,300,this);
g.setColor(Color.green);
g.drawString("Exit",660,325);
g.drawImage(img1,590,350,this);
g.setColor(Color.green);
g.drawString("Credits",655,375);
g.setColor(Color.gray);
g.fillRect(575,450,200,80);
g.setColor(Color.BLACK);
g.drawString("Info",650,470);
g.drawString("Das ist Space Taxi V. 0.01",600,500);
g.drawString("Space Taxi V. 0.01",625,150);
}
if(startvar==2){
// Spiel
if (dbImage == null)
{
dbImage = createImage (this.getSize().width, this.getSize().height);

}
dbg = dbImage.getGraphics (); // <<<<<<<<<--------------------
// Bildschirm im Hintergrund löschen
dbg.setColor (getBackground ());
dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);

// Auf gelöschten Hintergrund Vordergrund zeichnen
dbg.setColor (getForeground());

// Nun fertig gezeichnetes Bild Offscreen auf dem richtigen Bildschirm anzeigen
map.umfeld(dbg);
map.wolken1(dbg);
map.wolken2(dbg);
map.rauch(dbg);
map.haus(dbg);
baum.baum1(dbg);
map.boum2(dbg);
ufo.zeichnen(dbg);
zielPlattform.zeichnenLevel(dbg);
alien.zeichnenAlien1(dbg);
g.drawImage (dbImage, 0, 0, this);
}
if (startvar==3) {
// Credits
g.drawImage(img6,0,0,this);
// Zurück Button
g.drawImage(img7,190,180,this);
g.drawImage(img1,600,550,this);
g.setColor(Color.black);
g.drawString("Zurück",640,570);
System.out.println("Credits");
menue.zeichneCredits(g);
}
if (startvar==4) {
// Help
// Help Wallpaper
g.drawImage(img8,0,0,this);
menue.zeichneHelp(g);
// Zurück Button
g.drawImage(img1,560,600,this);
g.setColor(Color.green);
g.drawString("Zurück",620,625);
}
if (startvar==5) {
// Stage 2 Screen
g.drawImage(img5,0,0,this);
g.drawImage(img2,500,150,this);
// Stage 2 Button
g.setColor(Color.black);
g.drawString("Stage 2",600,185);
}
if (startvar==6) {
ufo.setStage();
if (dbImage == null)
{
dbImage = createImage (this.getSize().width, this.getSize().height);

}
dbg = dbImage.getGraphics (); // <<<<<<<<<--------------------
// Bildschirm im Hintergrund löschen
dbg.setColor (getBackground ());
dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);

// Auf gelöschten Hintergrund Vordergrund zeichnen
dbg.setColor (getForeground());
// Hintergrund für Stage 2
dbg.drawImage(img4,0,0,this);
dbg.drawImage(img9,700,200,this);
ufo.zeichnen(dbg);
plattform2.zeichnenLevel(dbg);
alien.zeichnenAlien1(dbg);
g.drawImage (dbImage, 0, 0, this);

}
if (startvar==7) {
g.drawImage(img10,0,0,this);
}

}

public void keyPressed(KeyEvent e)
{
System.out.println("User pressed key " + e.getKeyCode());
if(e.getKeyCode()==37) ufo.schubRechts(getGraphics());
if(e.getKeyCode()==38) ufo.schubHoch(getGraphics());
if(e.getKeyCode()==39) ufo.schubLinks(getGraphics());
if(e.getKeyCode()==40) ufo.schubRunter(getGraphics());
// Zum Menue zurück
if(e.getKeyCode()==112) startvar=1;
// Zum Help Menu zurück
if(e.getKeyCode()==113) startvar=4;
// Programm Beenden
if(e.getKeyCode()==27) System.exit(0);
}

public void keyReleased(KeyEvent e)
{
System.out.println("User released key " + e.getKeyCode());
}

public void keyTyped(KeyEvent e)
{
System.out.println("User typed key " + e.getKeyCode());
}
public void mouseClicked(MouseEvent e)
{
int x=e.getX();
int y=e.getY();
System.out.println("Maus at "+x+" "+y);
// Stage Change
if(x>500 && x< 800 && y>450 && y<510 && startvar==2){
startvar=5;
setTitle("Stage Screen");
repaint();
}
// Stage 2 Menue Funktion
if (x<795 && x>520 && y<208 && y>149 && startvar==5) {
startvar=6;
repaint();
}
if(x>500 && x< 800 && y>450 && y<510 && startvar==6){
startvar=7;
setTitle("Game End Screen");
repaint();
}
// Startbutton Funktion
if (startvar==0) {
startvar=1;
repaint();
}
if(x>600 && x< 750 && y>200 && y<244 && startvar==1){
startvar=2;
start();
setTitle("Space Taxi");
}
// Exit Button Funktion
if(x>600 && x< 750 && y>300 && y<345 && startvar==1){
System.exit(0);
}
// Credits Button Funktion
if(x>600 && x< 750 && y>360 && y<405 && startvar==1){
startvar=3;
repaint();
setTitle("Credits");
}
// Von den Credits zurück zum Menue Button
if(x>600 && x< 750 && y>500 && y<600 && startvar==3){
startvar=1;
setTitle("UfoFrame");
repaint();
}
// Help
if(x>600 && x< 750 && y>250 && y<300 && startvar==1){
startvar=4;
setTitle("Help");
repaint();
}
if(x>560 && x<733 && y>600 && y<637 && startvar==4) {
startvar=1;
repaint();
}
// Help Menue Buttons Auslösung
if(x>600 && x< 750 && y>200 && y<250 && startvar==4){
aufloesungsvar=0;
}
if(x>600 && x< 750 && y>250 && y<300 && startvar==4){
aufloesungsvar=1;
}

}

public void mouseEntered(MouseEvent e)
{
System.out.println("User clicked mouse " + e.getClickCount() + " times!");
}

public void mouseExited(MouseEvent e)
{

}

public void mousePressed(MouseEvent e)
{

}

public void mouseReleased(MouseEvent e)
{

}

public void mouseMoved(MouseEvent e)
{
}

public void mouseDragged(MouseEvent e)
{
}

// Ende Ereignisprozeduren

public static void main(String[] args) {
new UfoFrame("UfoFrame");
}


// Ende Methoden
}
[/Java]
Und hier die Klasse soundLib (ja sry ist klein geschrieben :oops:)
[Java]
import java.applet.*;
import java.net.*;
import java.util.*;

public class soundLib {


// Anfang Attribute
Hashtable<String, AudioClip> sounds;
Vector<AudioClip> loopingClips;
// Ende Attribute


public soundLib() {
sounds = new Hashtable<String, AudioClip>();
loopingClips = new Vector<AudioClip>();
}

// Anfang Methoden

public void loadSound(String name, String path) {
// Lädt den Sound
if (sounds.containsKey(name)) {
return;
}

URL sound_url = getClass().getClassLoader().getResource(path);
sounds.put(name, (AudioClip)Applet.newAudioClip(sound_url));
}
public void playSound(String name) {
// Spielt den Sound ab
AudioClip audio = sounds.get(name);
audio.play();
}
public void loopSound(String name) {
// Spielt sich wiederholende Sounds ab
AudioClip audio = sounds.get(name);
loopingClips.add(audio);
audio.loop();
}
public void stopLoopingSounds() {
// Stoppt sich wiederholende Sounds
for (AudioClip c:loopingClips) {
c.stop();
}
}
// Ende Methoden
}
[/Java]

Und nun wenn die Methode musik aufgerufen wird bekomme ich diese NullPointer:
Exception in thread "main" java.lang.NullPointerException
at sun.applet.AppletAudioClip.<init>(AppletAudioClip.java:48)
at java.applet.Applet.newAudioClip(Applet.java:279)
at soundLib.loadSound(soundLib.java:28)
at UfoFrame.<init>(UfoFrame.java:92)
at UfoFrame.main(UfoFrame.java:414)

Weiss jemand wo der Fehler liegt ???? Oder was ich anderes tuen kann... ich komm alleine nicht mehr weiter :oops: !?!?!
 
S

Spacerat

Gast
Wie es aussieht wird die Datei, die sich hinter "sound_url" vebergen soll nicht gefunden. "sound_url" ist deswegen null.
Iwie sieht das alles in allem auch nicht nach standard Programmierung aus. Jedenfalls sehe ich, das zwar die Klasse Applet verwendet wird, nicht jedoch dessen "getClip()"-Methode.
 

Rave

Bekanntes Mitglied
Wie es aussieht wird die Datei, die sich hinter "sound_url" vebergen soll nicht gefunden. "sound_url" ist deswegen null.
Iwie sieht das alles in allem auch nicht nach standard Programmierung aus. Jedenfalls sehe ich, das zwar die Klasse Applet verwendet wird, nicht jedoch dessen "getClip()"-Methode.

Hmmm...Programmiere auch noch nicht so lange ^^ bin grade dabei mir mit diesem Spiel alles beizubringen !!!
Was meinst du denn mit Standartprogrammierung ???
Hab ich die Sound URL einfach nur falsch eingegeben oder ist der Pfad falsch ???? ???:L
Oder etwas ganz anderes ??? ^^
 
S

Spacerat

Gast
Hmmm...Programmiere auch noch nicht so lange ^^ bin grade dabei mir mit diesem Spiel alles beizubringen !!!
Was meinst du denn mit Standartprogrammierung ???
Hab ich die Sound URL einfach nur falsch eingegeben oder ist der Pfad falsch ???? ???:L
Oder etwas ganz anderes ??? ^^
Also
1. nehme ich mal stark an, das eigentlich nur der Pfad zur Audiodatei falsch ist und die URL deswegen null ist.
2. Die verwendung dieser statischen Applet-Methode ist schlicht ungewöhnlich. Laut Insel bietet sich diese Methode für simple Zwecke zwar an (obwohl, die verwenden die auch ein biss'l anders), aber hinte dem Sound-API steckt noch ein wenig mehr: Handbuch der Java-Programmierung, 3. Auflage
 

Rave

Bekanntes Mitglied
Also
1. nehme ich mal stark an, das eigentlich nur der Pfad zur Audiodatei falsch ist und die URL deswegen null ist.
2. Die verwendung dieser statischen Applet-Methode ist schlicht ungewöhnlich. Laut Insel bietet sich diese Methode für simple Zwecke zwar an (obwohl, die verwenden die auch ein biss'l anders), aber hinte dem Sound-API steckt noch ein wenig mehr: Handbuch der Java-Programmierung, 3. Auflage

Hmmmm...eigentlich stimmt der Pfad !!! Also ich habe einen Ordner Java Projekte auf dem Desktop und in dem sind die ganzen java datein und ein Ordner sounds in dem die Audio Datei im Wave Format vorliegt !!!
Wie geb ich das denn dann an ??? ich muss doch nur von dem ordner in dem die java datei ist den Pfad zur Audio Datei angeben oder ???
 
S

Spacerat

Gast
standard Verzeichnisstruktur eines Projektes:
Code:
C:\Beispielprojekt\src
                      \mypacket
                               \MyClass.java
C:\Beispielprojekt\bin
                      \mypacket
                               \MyClass.java
C:\Beispielprojekt\sounds
                         \sndres.wav
C:\Beispielprojekt\images
                         \imgres.png
Die auszuführende Klasse ist "mypacket.MyClass".
Das Verzeichnis in welchem diese Klasse ausgeführt werden kann, ist "C:\Beispielprojekt\bin". Ruft man innerhalb von "MyClass" nun "getClass().getRessource("sndres.wav");" auf, wird "sndres.wav" in "C:\Beispielprojekt\bin\mypacket" gesucht. Diese variante verwendet man, wenn die Ressourcen später mit im Jar-Archiv gehalten werden sollen. Allerdings empfiehlt es sich dann, sie Ressource-Verzeichnisse mit in die Quellverzeichnisse zu legen und von der Kompilierung auszuschliessen. Mit "File sndres = new File("sounds\sndres.wav");" würde "sndres" nun auf "C:\Beispielprojekt\bin\sounds\sndres.wav" zeigen. Folgender Aufruf im Verzeichnis "C:\Beispielprojekt" aus der Console sollte mit der File-Variante funktionieren.
Code:
C:\>java.exe -cp .;bin mypacket.MyClass
Natürlich kann man die Verzeichnisse "src" und "bin" auch weglassen. Das gibt bei grösseren Projekten aber ein heiden Chaos und erschwert die Erstellung eines Jar-Archives unheimlich. Hoffe das hilft ein wenig...
 

Rave

Bekanntes Mitglied
Hmmm...irgendwie hilft mir das auch nicht sonderlich weiter (könnt aber auch daran liegen das ich noch nich so viel Erfahrung habe)
Also die Pfadbezeichnung stimmt !!! Woran kann es denn noch liegen ???? ???:L
 
S

Spacerat

Gast
Also die Pfadbezeichnung stimmt !!!
Ich behaupte das nach wie vor das Gegenteil: Füge in deiner SoundLib hinter Zeile 27 mal folgendes ein:[JAVA=28]System.out.println(sound_url);[/code]Meine Behauptung ist bestätigt, wenn nach erneuter Kompilierung und Starten der App vor der erscheinenden Exception "null" statt eine URL ausgegeben wird. Ist dies der Fall, verwende zum Erstellen der URL schlicht eine Zeile lt. Insel:[JAVA=27]URL sound_url = new File(path).toURI().toURL();[/code]
 

Rave

Bekanntes Mitglied
Ich behaupte das nach wie vor das Gegenteil: Füge in deiner SoundLib hinter Zeile 27 mal folgendes ein:[JAVA=28]System.out.println(sound_url);[/code]Meine Behauptung ist bestätigt, wenn nach erneuter Kompilierung und Starten der App vor der erscheinenden Exception "null" statt eine URL ausgegeben wird. Ist dies der Fall, verwende zum Erstellen der URL schlicht eine Zeile lt. Insel:[JAVA=27]URL sound_url = new File(path).toURI().toURL();[/code]

Du hattest recht ;-) ich geb mich geschlagen ;)

Starte C:\Dokumente und Einstellungen\Kiri\Eigene Dateien\Java\1.0 Java Projekte\UfoFrame.java

file:/C:/Dokumente%20und%20Einstellungen/Kiri/Eigene%20Dateien/Java/1.0%20Java%20Projekte/sounds/explosion.wav
null
Exception in thread "main" java.lang.NullPointerException
at sun.applet.AppletAudioClip.<init>(AppletAudioClip.java:48)
at java.applet.Applet.newAudioClip(Applet.java:279)
at soundLib.loadSound(soundLib.java:29)
at UfoFrame.<init>(UfoFrame.java:92)
at UfoFrame.main(UfoFrame.java:414)


Und nun soll ich Zeile 27 durch das ersetzen was du als 2tes geschrieben hast oder wie ??? Was macht diese neu geschriebene Zeile dann ?? Bzw was macht diese anders ???
Oder löst das dann mein Problem immer noch nich ??? Weil ich find eigentlich keinen fehler in der Pfadangabe :oops:
 
S

Spacerat

Gast
Jepp... Zeile 27 mit meiner 2. ersetzen. Das "System.out.usw.." (Z28) kannst du ja nochmal drin lassen.
 

Rave

Bekanntes Mitglied
Jepp... Zeile 27 mit meiner 2. ersetzen. Das "System.out.usw.." (Z28) kannst du ja nochmal drin lassen.

So hab ich getan....muss ich noch was anderes machen ???

Denn ich bekomme dieses Fehler:
Compiliere C:\Dokumente und Einstellungen\Kiri\Eigene Dateien\Java\1.0 Java Projekte\soundLib.java mit Java-Compiler
soundLib.java:27:30: cannot find symbol
symbol : class File
location: class soundLib
URL sound_url = new File(path).toURI().toURL();
^
1 error


Oder hab ich mal wieder etwas falsch gemacht ^^
 

Leroy42

Top Contributor
Du mußt das package importieren, daß die Klasse File zur Verfügung stellt:

Java:
import java.io.*
 

Rave

Bekanntes Mitglied
Du mußt das package importieren, daß die Klasse File zur Verfügung stellt:

Java:
import java.io.*

Compiliere C:\Dokumente und Einstellungen\Kiri\Eigene Dateien\Java\1.0 Java Projekte\soundLib.java mit Java-Compiler
soundLib.java:28:54: unreported exception java.net.MalformedURLException; must be caught or declared to be thrown
URL sound_url = new File(path).toURI().toURL();
^
1 error


Ich versteh diese Fehler noch nicht alle deswegen Frage ich nach ;-) bin aber immer selbst dabei rauszufinden was es ist ;-)
 
S

Spacerat

Gast
Äh... du machst was falsch... du benutzt offenbar keine IDE mit Codevervollständigung und automatischem "import" :D. Oder ich mache was falsch... ich benutze so etwas und vergesse deswegen Anfängern zu sagen, das dort noch die ein oder andere "import"-Anweisung am Anfang der Klasse eingefügt werden muss. So wie z.B. hier:
Java:
import java.io.File;
 

Rave

Bekanntes Mitglied
Äh... du machst was falsch... du benutzt offenbar keine IDE mit Codevervollständigung und automatischem "import" :D. Oder ich mache was falsch... ich benutze so etwas und vergesse deswegen Anfängern zu sagen, das dort noch die ein oder andere "import"-Anweisung am Anfang der Klasse eingefügt werden muss. So wie z.B. hier:
Java:
import java.io.File;

Auch das hier:

Compiliere C:\Dokumente und Einstellungen\Kiri\Eigene Dateien\Java\1.0 Java Projekte\soundLib.java mit Java-Compiler
soundLib.java:28:54: unreported exception java.net.MalformedURLException; must be caught or declared to be thrown
URL sound_url = new File(path).toURI().toURL();
^
1 error


???:L
 

Leroy42

Top Contributor
Du mußt die Zeile 28 in einen try-catch-Block packen:

Java:
try {...}
catch (MalformedURLException ex} {
   System.out.println(ex);
}
 

Rave

Bekanntes Mitglied
Du mußt die Zeile 28 in einen try-catch-Block packen:

Java:
try {...}
catch (MalformedURLException ex} {
   System.out.println(ex);
}

Hab das jetzt so eingefügt:
[Java]
try {URL sound_url = new File(path).toURI().toURL();}
catch (MalformedURLException ex} {
System.out.println(ex);
}
[/Java]

Und nun bekomme ich 13 errors:
soundLib.java:28:41: ')' expected
catch (MalformedURLException ex} {
^
soundLib.java:35:8: illegal start of expression
public void playSound(String name) {
^
soundLib.java:35:15: illegal start of expression
public void playSound(String name) {
^
soundLib.java:35:29: ';' expected
public void playSound(String name) {
^
soundLib.java:35:41: ';' expected
public void playSound(String name) {
^
soundLib.java:40:8: illegal start of expression
public void loopSound(String name) {
^
soundLib.java:40:15: illegal start of expression
public void loopSound(String name) {
^
soundLib.java:40:29: ';' expected
public void loopSound(String name) {
^
soundLib.java:40:41: ';' expected
public void loopSound(String name) {
^
soundLib.java:46:8: illegal start of expression
public void stopLoopingSounds() {
^
soundLib.java:46:15: illegal start of expression
public void stopLoopingSounds() {
^
soundLib.java:46:37: ';' expected
public void stopLoopingSounds() {
^
soundLib.java:53:2: reached end of file while parsing
}
^
13 errors
 

Leroy42

Top Contributor
Irgendwo hast du eine schließende Klammer vergessen/gelöscht.

Außerdem:
[Java]
try {URL sound_url = new File(path).toURI().toURL();}
catch (MalformedURLException ex} {
System.out.println(ex);
}
[/Java]
bringt das nichts weil die Variable sound_url nur lokal innerhalb des try-catch blocks
definierst und sie deshalb außerhalb nicht
 
S

Spacerat

Gast
Soooo... nu' isset mein Fehler... Ändern wir also Zeile 27 in Folgendes:[JAVA=27]
try {
URL sound_url = new File(path).toURI().toURL();
sounds.put(name, (AudioClip)Applet.newAudioClip(sound_url));
} catch(MalformedURLException e) {
// can't be happen?
e.printStackTrace();
// System.exit(-1);
}
[/code]Neue import-Anweisung nicht vergessen:[JAVA=1]import java.net.MalformedURLException;[/code]...bei dir schon dabei durch import java.net.*;
@Edit: waaaaahhhh s bünnisch wia laaaaaannnngsaaaam heit' :D ... dann hab' isch ja Gelegenheut noch was hinzuzufügen...
 
Zuletzt bearbeitet von einem Moderator:

Rave

Bekanntes Mitglied
Soooo... nu' isset mein Fehler... Ändern wir also Zeile 27 in Folgendes:[JAVA=27]try {
URL sound_url = new File(path).toURI().toURL();
} catch(MalformedURLException e) {
// can't be happen?
e.printStackTrace();
// System.exit(-1);
}[/code]Neue import-Anweisung nicht vergessen:[JAVA=1]import java.net.MalformedURLException;[/code]...bei dir schon dabei durch import java.net.*;
@Edit: waaaaahhhh s bünnisch wia laaaaaannnngsaaaam heit' :D

Jop habsch drinne ;-) ehm ja jetzt ist das mit der Variable sound_URL

soundLib.java:37:29: cannot find symbol
symbol : variable sound_url
location: class soundLib
System.out.println(sound_url);
^
soundLib.java:38:58: cannot find symbol
symbol : variable sound_url
location: class soundLib
sounds.put(name, (AudioClip)Applet.newAudioClip(sound_url));
^
2 errors


Wie bekomm ich das wieder in Ordnung ??? Also wie definiere ich die ?? ^^
 
S

Spacerat

Gast
Heee.... mal langsam... alter Mann ist kei D-Zug.:D
Hab' im vorigen Thread noch mal was Editiert... Das System.out können wa nu' wohl wieder entfernen.
 

Rave

Bekanntes Mitglied
Heee.... mal langsam... alter Mann ist kei D-Zug.:D
Hab' im vorigen Thread noch mal was Editiert... Das System.out können wa nu' wohl wieder entfernen.

Der NullPointer ist weg :) Ihr seit der hammer :toll:

Nun da ich euch schon die ganze Zeit auf die nerven gehe :-D Frag ich gleich noch mal weiter xD Also welche Formate kann ich damit jetzt eigentlich öffnen ??

Weil wenn ich meine App starte dann kommt zwar kein Fehler mehr aber er spielt nischt ab !!! Das ist ne mp3 Datei !! Muss ich dazu noch was installieren oder programmieren ???

Kann ja noch mal wen Source Code posten wenn ihr ihn braucht ???:L

EDIT:

Er führt diese Methode nicht aus
[Java]
public void musik() {
if (startvar>0) {
slib.playSound("explosion");
}
}
[/Java]
 
Zuletzt bearbeitet:
S

Spacerat

Gast
Standard-Dateiformate: RIFF-WAVE (*.wav), AIFF (*aif) und Sun-Audio (*.au).
Weitere, z.B. MP3, können per JMF (oder besser andere ähnliche APIs) hinzugefügt werden. Da gibt es z.B. noch JavaFX. Ich weiss aber nicht (weil ich es nicht verwende), ob da schon weitere Dateitypen implementiert wurden.
 

Rave

Bekanntes Mitglied
Standard-Dateiformate: RIFF-WAVE (*.wav), AIFF (*aif) und Sun-Audio (*.au).
Weitere, z.B. MP3, können per JMF (oder besser andere ähnliche APIs) hinzugefügt werden. Da gibt es z.B. noch JavaFX. Ich weiss aber nicht (weil ich es nicht verwende), ob da schon weitere Dateitypen implementiert wurden.

Okay danke ;-) mein einer Sound ist in .wav und der will auch nicht funktionieren....es muss also im Frame noch irgendwo ein Fehler liegen....
[Java]
public void musik() {
if (startvar>0) {
slib.playSound("explosion");
}
}
[/Java]
Diese Methode wird nicht ausgeführt....??!!
 

Rave

Bekanntes Mitglied
Okay hab es :)

Funktioniert alles bestens :)

Ihr seit spitze :toll: DANKE für eure Mühe !!!!!

LG der Rave :applaus:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Problem mit Sound Java Basics - Anfänger-Themen 5
0 Problem mit Bild und Sound im Applet Java Basics - Anfänger-Themen 12
Pinhg Sound in Greenfoot Code einbinden Java Basics - Anfänger-Themen 2
SpigBin Sound einbinden bei Funktionsaufruf Java Basics - Anfänger-Themen 4
R MediaPlayer: Sound hat Verzögerung Java Basics - Anfänger-Themen 2
Dann07 Sound wird nicht abgespielt Java Basics - Anfänger-Themen 25
B Eclipse spielt Sound nicht ab Java Basics - Anfänger-Themen 12
CptK Erste Schritte Sound-Datei einbinden Java Basics - Anfänger-Themen 2
R Sound abspielen Java Basics - Anfänger-Themen 9
N kein Sound beim Öffnen der jar-Datei, in Eclipse schon Java Basics - Anfänger-Themen 1
S Sound stoppen und nach Pause wieder abspielen Java Basics - Anfänger-Themen 6
U Sound einfügen Java Basics - Anfänger-Themen 6
Anfänger2011 Input/Output Sound abspielen - ICH VERZWEIFLE!!!! Java Basics - Anfänger-Themen 24
K Sound speichern Java Basics - Anfänger-Themen 3
J Sound-Wiedergabe Java Basics - Anfänger-Themen 6
P Java Sound midi Java Basics - Anfänger-Themen 3
D Sound abspielen, wo muss die .wav liegen Java Basics - Anfänger-Themen 3
R Erste Schritte Exception bei erstellen von Java Sound Java Basics - Anfänger-Themen 23
2 Input/Output Sound aufnehmen/abspielen? Java Basics - Anfänger-Themen 2
SheldoN Sound abspielen nach Buttonklick in Applets Java Basics - Anfänger-Themen 17
J WAVE-file mit Java Sound erstellen Java Basics - Anfänger-Themen 9
V Sound wird nicht abgspielt Java Basics - Anfänger-Themen 8
F sound nur abspielen, wenn er nicht läuft Java Basics - Anfänger-Themen 6
B Sound-Wiedergabe Java Basics - Anfänger-Themen 4
F Spiel geht nicht mehr nach neuer Klasse Sound Java Basics - Anfänger-Themen 18
S kein sound? Java Basics - Anfänger-Themen 3
A Jlayer: Wie sound stoppen der in einem Thread läuft Java Basics - Anfänger-Themen 7
M Kein Sound in der .jar, davor schon Java Basics - Anfänger-Themen 6
M sound abspielen Java Basics - Anfänger-Themen 3
C Wav-Sound nur unter Window Java Basics - Anfänger-Themen 5
C Sound abspielen Java Basics - Anfänger-Themen 6
P Sound in Applikation (nicht Applet) Java Basics - Anfänger-Themen 5
Developer_X Java can't play mid sound? Java Basics - Anfänger-Themen 16
K kein Sound beim Öffnen der jar-Datei, in Eclipse schon Java Basics - Anfänger-Themen 2
X Benutzung von Mixer (Sound, nicht Küche!) Java Basics - Anfänger-Themen 2
V Serialisieren einer ShortMessage (javax.sound.midi) Java Basics - Anfänger-Themen 5
S Java Sound mit 24 bit/96 kHz Audio? Java Basics - Anfänger-Themen 12
D Sound in Frames möglich? EDIT Class Clip Java Basics - Anfänger-Themen 5
K Sound stoppt nicht Java Basics - Anfänger-Themen 3
M Sound Abspielen Java Basics - Anfänger-Themen 9
N Java Sound - Unsupported control type Java Basics - Anfänger-Themen 2
F Sound Interface Richtig implementieren Java Basics - Anfänger-Themen 4
G Sound/Endlosschleife/Abbruchproblem Java Basics - Anfänger-Themen 3
B Wo finde ich die Klasse javax.sound.sampled.AudioSystem Java Basics - Anfänger-Themen 7
R Sound wird im Applet nicht abgespielt Java Basics - Anfänger-Themen 13
G Sound bei buttonklick abspielen Java Basics - Anfänger-Themen 7
B Sound einbinden und abspielen Java Basics - Anfänger-Themen 9
D .wav Sound in einer simplen Applikation abspielen Java Basics - Anfänger-Themen 3
K Java Sound Application Java Basics - Anfänger-Themen 2
G Sound einbinden Java Basics - Anfänger-Themen 2
G sound in applikation Java Basics - Anfänger-Themen 7
G Sound Java Basics - Anfänger-Themen 13
megachucky wo gibts icons, images und sound dateien zum download? Java Basics - Anfänger-Themen 2
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
I WildFily - unterschiedliche Libs im Projekt verursachen Problem Java Basics - Anfänger-Themen 11
imocode Vererbung Problem mit Vererbung Java Basics - Anfänger-Themen 2
L Taschenrechner Problem Java Basics - Anfänger-Themen 4
I Applikationsserver (WildFly) - Zugriff auf Ressourcen.. Problem mit Pfade Java Basics - Anfänger-Themen 10
A ScheduledExecutorService problem Java Basics - Anfänger-Themen 7
marcelnedza Problem mit Weltzuweisung, JavaKarol Java Basics - Anfänger-Themen 13
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
M Erste Schritte Collatz Problem max int Java Basics - Anfänger-Themen 3
M Problem bei verschachtelter for-Schleife bei zweidimensionalen Arrays Java Basics - Anfänger-Themen 3
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
frager2345 Problem mit Methode Java Basics - Anfänger-Themen 4
L Problem bei Rechnung mit Math.pow Java Basics - Anfänger-Themen 13
A Thread-Schreibe-Lese-Problem Java Basics - Anfänger-Themen 4
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
sserio BigInteger Problem Java Basics - Anfänger-Themen 4
JordenJost Taschenrechner problem Java Basics - Anfänger-Themen 5
K Problem mit "Random" Java Basics - Anfänger-Themen 5
S Datei anlegen Problem! Groß- und Kleinschreibung wird nicht unterschieden Java Basics - Anfänger-Themen 4
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5
xanxk Problem For-Schleife mit Charakter Java Basics - Anfänger-Themen 2
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6
sserio Liste erstellt und ein Problem mit dem Index Java Basics - Anfänger-Themen 8
sserio Schwimmen als Spiel. Problem mit to String/ generate a card Java Basics - Anfänger-Themen 4
J Schleife Problem Java Basics - Anfänger-Themen 2
D Problem mit der Erkennung von \n Java Basics - Anfänger-Themen 2
milan123 das ist meine aufgabe ich hab das problem das bei mir Wenn ich die Richtung der Linien verändern will und drei davon sind richtig, verändere ich die 4 Java Basics - Anfänger-Themen 3
M Verständins Problem bei Aufgabe Java Basics - Anfänger-Themen 4
HeiTim Problem mit der Kommasetzung an der richtigen stelle Java Basics - Anfänger-Themen 59
Temsky34 Problem mit dem Code Java Basics - Anfänger-Themen 17
P Problem mit Calendar.getDisplayName() Java Basics - Anfänger-Themen 8
C Problem mit mehreren Methoden + Scanner Java Basics - Anfänger-Themen 5
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
M Problem mit Klassenverständnis und Button Java Basics - Anfänger-Themen 8
EchtKeineAhnungManchmal hallo habe ein Problem mit einer Datei -> (Zugriff verweigert) Java Basics - Anfänger-Themen 4
H Problem mit Verzweigungen Java Basics - Anfänger-Themen 6
H Problem mit Rückgabewert Java Basics - Anfänger-Themen 7
josfe1234 JAVA FX problem Java Basics - Anfänger-Themen 3
A Code Problem Java Basics - Anfänger-Themen 6
Henri Problem von Typen Java Basics - Anfänger-Themen 7
J Problem mit "ArrayIndexOutOfBoundsException" Java Basics - Anfänger-Themen 11
K jackson Mapping - Problem mit Zeitzonen Java Basics - Anfänger-Themen 10
B Threads Problem mit mehreren Threads Java Basics - Anfänger-Themen 38
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
D Schleifen Problem Java Basics - Anfänger-Themen 2
H So viele Fehlermeldungen, dass ich nicht weiß wo das Problem ist. Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben