2011-03-17 60 views
0

我想创建一个可以通过网址从互联网播放MP3音乐的播放器。 我想这一点,但它不工作:JAVA,通过网址播放mp3

import java.net.URL; 
import sun.audio.AudioData; 
import sun.audio.AudioPlayer; 
import sun.audio.AudioStream; 
import sun.audio.ContinuousAudioDataStream; 


public class Player { 

    public static void main(String[] argv) throws Exception { 

     URL url = new URL("http://stream10.jamendo.com/stream/247/mp31/07%20-%20Both%20-%20Je%20le%20veux%20aussi.mp3"); 
     AudioStream as = new AudioStream (url.openStream()); 
     AudioData data = as.getData(); 
     ContinuousAudioDataStream cas = new ContinuousAudioDataStream (data); 
     AudioPlayer.player.start(cas); 

    } 

} 

我得到了错误:

Exception in thread "main" java.io.IOException: could not create audio stream from input stream 
     at sun.audio.AudioStream.<init>(AudioStream.java:65) 
     at Player.main(Player.java:27) 
Java Result: 1 

我怎么能解决这个问题?

+0

您可以下载URL来做临时文件并使用它。 ref:http://download.oracle.com/javase/tutorial/networking/urls/readingWriting.html – 2011-03-17 20:22:50

+0

我不知道如何解决你的问题,但如果你对其他库/ API感兴趣做音频在Java中,我建议检查一下[JavaZoom](http://www.javazoom.net/mp3spi/mp3spi.html)。 – jbranchaud 2011-03-17 20:24:28

回答

0

我相信对于你选择的这个特定的图书馆来说,太阳之一,并不支持mp3,它完全是这样。正如@Treebranch所建议的,更好的方法是查看其他可能处理MP3的API。

从JavaZoom页:

“MP3SPI是Java服务提供者接口,增加了MP3(MPEG 1/2/2.5 1/2/3层)为Java平台的音频格式的支持”。