簡體   English   中英

JMF音樂播放器

[英]JMF Music Player

我正在嘗試通過JMF庫為學校項目創建一個簡單的mp3播放器,但是我總是遇到此錯誤。 文件的路徑正確。

java.lang.NullPointerException
        at javax.media.MediaLocator.<init>(MediaLocator.java:37)
        at Mp3Player.run(Mp3Player.java:40)

這是我的代碼:

import java.net.URL;
import javax.media.ControllerEvent;
import javax.media.ControllerListener;
import javax.media.EndOfMediaEvent;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.Player;


public class Mp3Player extends Thread {

   private String filename;
   Player player;

   public Mp3Player(String mp3Filename) {
      this.filename = mp3Filename;
   }

   public void run() {
      try {
         URL url = this.getClass().getClassLoader().getResource(filename);
         MediaLocator locator = new MediaLocator(url);
         player = Manager.createPlayer(locator);
         player.addControllerListener(new ControllerListener() {
            public void controllerUpdate(ControllerEvent event) {
               if (event instanceof EndOfMediaEvent) {
                  player.stop();
                  player.close();
               }
            }
         });
         player.realize();
         player.start();
      } catch (Exception e) {
         e.printStackTrace();
      }
   }

   public static void main(String[] args) {
      new Mp3Player("C:\\Users\\Aziz\\Music\\music\\a.mp3").start();
   }
}

此字符串URL url = this.getClass().getClassLoader().getResource(filename); 似乎很可疑。 嘗試在java.io.*使用File類,該類具有toURL()方法:

File f = new File ( filename );
MediaLocator locator = new MediaLocator ( f.toURL() );
player = Manager.createPlayer ( locator );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM