2013-02-18 63 views
0

我有這樣的代碼:JMF + mp3plugin.jar MP3文件是不是在玩

package test; 

import java.io.File; 

import javax.media.Format; 
import javax.media.Manager; 
import javax.media.MediaLocator; 
import javax.media.Player; 
import javax.media.PlugInManager; 
import javax.media.format.AudioFormat; 

public class AudioTest { 
    public static void main(String[] args) { 
     Format input1 = new AudioFormat(AudioFormat.MPEGLAYER3); 
     Format input2 = new AudioFormat(AudioFormat.MPEG); 
     Format output = new AudioFormat(AudioFormat.LINEAR); 
     PlugInManager.addPlugIn(
      "com.sun.media.codec.audio.mp3.JavaDecoder", 
      new Format[]{input1, input2}, 
      new Format[]{output}, 
      PlugInManager.CODEC 
     ); 
     try{ 
      Player player = Manager.createPlayer(new MediaLocator(new File("1.mp3").toURI().toURL())); 
      player.realize(); 
         player.start(); 
     } 
     catch(Exception ex){ 
      ex.printStackTrace(); 
     } 
    } 
} 

我試圖播放MP3文件,mp3plugin被添加到項目的lib以及JMF的罐子。 控制檯上沒有錯誤,但無法聽到聲音。

該文件未播放。 .wav文件播放良好。

有什麼想法嗎?

+1

由於1.3的J2SE已經有Java聲音林。所有需要播放(短)MP3的代碼都可以在[tag:javasound]信息中看到。頁面和運行時類路徑上的'mp3plugin.jar'。 –

回答