2013-11-28 2 views
0

이 코드를 실행하면 아무 것도 재생되지 않습니다. 그러나 오류는 없습니다. 나는 크로스 플랫폼 JMF 2.1.1을 사용하고 있으며 넷빈 프로젝트에 JMF.jar 파일을 가져왔다.자바의 JMF 프레임 워크에서 오디오가 재생되지 않습니다.

import javax.swing.*; 
import java.awt.*; 
import javax.media.*; 
import java.awt.event.*; 
import java.net.*; 

public class HelloJMF { 

    JFrame frame = new JFrame(" Hello JMF Player"); 
    static Player helloJMFPlayer = null; 

    public HelloJMF() { 

     try { // method using URL 
      URL url = new URL("file", null, "C:\\Users\\Tamojit9\\Documents\\NetBeansProjects\\MediaPlayer\\src\\sample\\gunaah.mp3"); 
      helloJMFPlayer = Manager.createRealizedPlayer(url); 
     } catch (Exception e) { 
      System.out.println(" Unable to create the audioPlayer :" + e); 
     } 

     Component control = helloJMFPlayer.getControlPanelComponent(); 

     frame.getContentPane().add(control, BorderLayout.CENTER); 
     frame.addWindowListener(new WindowAdapter() { 
      public void windowClosing(WindowEvent we) { 
       HelloJMF.stop(); 
       System.exit(0); 
      } 
     }); 
     frame.pack(); 
     frame.setSize(new Dimension(200, 50)); 
     frame.setVisible(true); 
     helloJMFPlayer.start(); 

    } 

    public static void stop() { 
     helloJMFPlayer.stop(); 
     helloJMFPlayer.close(); 
    } 

    public static void main(String args[]) { 
     HelloJMF helloJMF = new HelloJMF(); 
    } 
} 

오류를 찾는 데 도움을주십시오. !!!!

+0

코드가 [이 페이지] (http://pscode.org/media/#sound)에 표시된 MP3 파일과 작동합니까? BTW - MP3를 재생하기 위해 전체 JMF를 런타임 클래스 경로에 추가 할 필요는 없습니다. JMF (one Jar)의 일부는 MP3를 디코딩하기위한 서비스 공급자 인터페이스입니다. 이를 런타임 클래스 경로에 추가하면 Java Sound에서 MP3를 재생할 수 있습니다. –

+0

jmf.jar 파일을 classpath에만 추가했습니다. –

+0

음, 그게 문제라고 생각합니다. JMF Jar를 덤프하고 SPI를 추가하고 Java Sound로이 작업을 수행하십시오. [info. 페이지] (http://stackoverflow.com/tags/javasound/info)를 참조하십시오. –

답변

-1

mp3 파일을 지정했지만 jmf 만 제공하면 mp3를 재생할 수 없습니다.
mp3plugin.jar 파일을 사용해야하고 jar 파일을 다운로드 한 다음 classpath에 추가 한 다음 다시 시도해보고 코드로 .wav 파일을 재생할 수 있습니다.