0

When i try to get an image from mp3, i catch an exception.

public MediaPlayer mediaPlayer;
public Media media;
public MediaView mediaView;
public ImageView albumPicture;

public void initialize() {
    media = new Media(new File("res\\music.mp3").toURI().toString());
    media.getMetadata().addListener(new MapChangeListener<String, Object>() {
        @Override
        public void onChanged(Change<? extends String, ?> c) {
            if (c.wasAdded()) {
                if ("image".equals(c.getKey())) {
                    albumPicture.setImage((Image)c.getValueAdded());
                }
            }
        }
    });

    mediaPlayer = new MediaPlayer(media);

Exception in thread "JavaFX Application Thread" java.lang.NullPointerException at sample.Controller$1.onChanged(Controller.java:67) at com.sun.javafx.collections.MapListenerHelper$SingleChange.fireValueChangedEvent(MapListenerHelper.java:163) at com.sun.javafx.collections.MapListenerHelper.fireValueChangedEvent(MapListenerHelper.java:72) at com.sun.javafx.collections.UnmodifiableObservableMap.callObservers(UnmodifiableObservableMap.java:65) at com.sun.javafx.collections.UnmodifiableObservableMap.lambda$new$30(UnmodifiableObservableMap.java:59) at javafx.collections.WeakMapChangeListener.onChanged(WeakMapChangeListener.java:88) at com.sun.javafx.collections.MapListenerHelper$SingleChange.fireValueChangedEvent(MapListenerHelper.java:163) at com.sun.javafx.collections.MapListenerHelper.fireValueChangedEvent(MapListenerHelper.java:72) at com.sun.javafx.collections.ObservableMapWrapper.callObservers(ObservableMapWrapper.java:115) at com.sun.javafx.collections.ObservableMapWrapper.put(ObservableMapWrapper.java:173) at javafx.scene.media.Media.updateMetadata(Media.java:525) at javafx.scene.media.Media.access$200(Media.java:78) at javafx.scene.media.Media$_MetadataListener.lambda$onMetadata$10(Media.java:544) at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) at java.lang.Thread.run(Thread.java:748)

Danil _
  • 17
  • 2
  • 6

0 Answers0