谁能告诉我如何实现一个独立的java客户端来播放FM收音机。我在网上搜索找不到任何有用的东西。我们需要实现的所有 API 是什么,一旦实现结束,如何测试它?
问问题
10310 次
2 回答
8
除了AurA答案...
您可以使用JLayer 库轻松阅读和播放大多数网络收音机。该库也是跨平台的,此外,还允许您播放任何 mp3 文件。
这是一个小型流播放器示例:
import javazoom.jl.decoder.JavaLayerException;
import javazoom.jl.player.Player;
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
public class RadioConnector
{
public static void main ( String[] args )
{
try
{
playRadioStream ( "http://radio.flex.ru:8000/radionami" );
}
catch ( IOException e )
{
e.printStackTrace ();
}
catch ( JavaLayerException e )
{
e.printStackTrace ();
}
}
private static void playRadioStream ( String spec ) throws IOException, JavaLayerException
{
// Connection
URLConnection urlConnection = new URL ( spec ).openConnection ();
// If you have proxy
// Properties systemSettings = System.getProperties ();
// systemSettings.put ( "proxySet", true );
// systemSettings.put ( "http.proxyHost", "host" );
// systemSettings.put ( "http.proxyPort", "port" );
// If you have proxy auth
// BASE64Encoder encoder = new BASE64Encoder ();
// String encoded = encoder.encode ( ( "login:pass" ).getBytes () );
// urlConnection.setRequestProperty ( "Proxy-Authorization", "Basic " + encoded );
// Connecting
urlConnection.connect ();
// Playing
Player player = new Player ( urlConnection.getInputStream () );
player.play ();
}
}
请注意,playRadioStream 方法将处理其调用的线程,直到发生某些事情(例如与无线电服务器的连接中断或您停止流)。
PS 是的,我在示例中包含了工作无线电 URL - 您可以尝试启动它,您的计算机将开始播放无线电流。
于 2012-06-19T12:30:05.183 回答
6
您可以使用 Webservices API 访问许多 Radio 网站
我正在在线发布最流行的广播 api 的链接。
使用 Java Web 服务,您可以轻松地与您的应用程序集成。
于 2012-06-19T09:45:20.663 回答