gpt4 book ai didi

java - 使用 javax.media.Player 与 javazoom.jl.player.Player 播放 radio 流

转载 作者:行者123 更新时间:2023-12-03 01:54:35 25 4
gpt4 key购买 nike

我是使用 Java 播放音频的新手。我编写了代码来播放一些广播流。
我发现有一些流媒体网址,例如 http://fm939.wnyc.org/wnycfm .这没有端口号并包含斜杠。我只能使用 javax.media.Player 播放这种类型的 url。

还有其他带有端口号且没有斜杠的流式 URL。例如,我有一个国家公共(public)广播电台 140.254.23.68:8000 的网址。我可以使用 javazoom.jl.player.Player 播放这些类型的 url,因为这个播放器需要一个 url 字符串和一个端口号。

谁能告诉我更多关于流的类型以及如何正确使用上述播放器的信息。例如,是否可以播放流 http://fm939.wnyc.org/wnycfm使用 javazoom.jl.player.Player 吗?如果是这样,怎么做?
任何帮助都感激不尽。

附录:

抱歉,我不是说 javazoom Player 接受 url。我正在使用以下代码片段来创建 javazoom 播放器。从代码中可以看出,我使用的是 SocketFactory createSocket 方法来创建连接。 createSocket 方法采用 url 和端口。我想知道如何播放像 http://fm939.wnyc.org/wnycfm 这样的网址,换句话说,一个没有明确端口号的 url。

请参阅下面的代码片段 -

response = null;
try {
SocketFactory sf = SocketFactory.getDefault();
connection = sf.createSocket(url,port);
request = "GET / HTTP/1.1\n\n";
outputStream = connection.getOutputStream();
if(outputStream!=null) {
outputStream.flush();
byte[] b = null;
try {b = request.getBytes(StandardCharsets.US_ASCII);}
catch(NullPointerException npe) {..}

if(b != null) {
outputStream.write(b);
outputStream.flush();
response = connection.getInputStream();
}
} catch (IOException e) {e.printStackTrace();}

javazoom.jl.player.Player zoomPlayer = null;
if(response!=null) {
try {zoomPlayer = new javazoom.jl.player.Player(response);
} catch (JavaLayerException e) {e.printStackTrace();}
}
return zoomPlayer;

最佳答案

“一个 URL 可以选择指定一个“端口””。

所以你可以设置端口。

我没有看到 javazoom.jl.player.Player 使用 url 的地方——也许是更新的版本。

但无论如何,请参阅文档以获取 URL。其中一位施 worker 员说

URL(String protocol, String host, int port, String file, URLStreamHandler handler)

Creates a URL object from the specified protocol, host, port number, file, and handler.

jmf播放器可以认为更稳定。并记录在案。

javazoom.jl.player.Player 是一行。

--

事实上,我可以用常规的 javax.sound 程序播放这两个流。

--

获取url流的方法是这样的:
  String u="http://140.254.23.68:8000";
URL url=new URL(u);
URLConnection uc = new URL(u).openConnection();
InputStream is=(InputStream)uc.getInputStream();

关于java - 使用 javax.media.Player 与 javazoom.jl.player.Player 播放 radio 流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36523211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com