Wiedergeben von audio mithilfe von JavaFX MediaPlayer in einer normalen Java-Anwendung?

Brauche ich, um in der Lage zu spielen Audio-Dateien (MP3 /Wav), die in einem normalen Java-Projekt. Ich würde lieber mit dem neuen JavaFX MediaPlayer eher als JMF. Ich schrieb einige code, um dies zu testen:

public void play()
{
    URL thing = getClass().getResource("mysound.wav");
    Media audioFile = new Media( thing.toString() );     
    try
    {                                       
        MediaPlayer player = new MediaPlayer(audioFile);
        player.play();
    }
    catch (Exception e)
    {
        System.out.println( e.getMessage() );
        System.exit(0);
    }        
}

Wenn ich diesen starte, bekomme ich die exception: Toolkit nicht initialisiert

Ich, dass dies etwas hat zu tun mit den JavaFX-thread. Meine Frage ist, wie kann ich dieses Problem lösen? Brauche ich zum erstellen einer JavaFX-Panel nur um zu spielen, einige audio-Dateien im hintergrund meine normale app, oder gibt es eine andere Möglichkeit?

Edit: Stacktrace:

java.lang.IllegalStateException: Toolkit not initialized
    at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:121)
    at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:116)
    at javafx.application.Platform.runLater(Platform.java:52)
    at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:445)
    at javafx.scene.media.MediaPlayer.<init>(MediaPlayer.java:360)
    at javaapplication6.JavaApplication6.play(JavaApplication6.java:23)
    at javaapplication6.JavaApplication6.main(JavaApplication6.java:14)
  • Ist die Linie 14, die Media audioFile = new Media( thing.toString() );?
  • Nein, das ist in der main-Methode den Aufruf der play() Methode. Zeile 23 ist diesem; MediaPlayer player = new MediaPlayer(audioFile);
InformationsquelleAutor Click Upvote | 2012-09-22
Schreibe einen Kommentar