我想录制一个在中午播放的互联网广播节目,我听不到。
收音机的URL为:
http://radio.orf.at/player/radioplayer.html?station=ooe
我查看了DOM,以找出播放器从何处获取数据。
我相信这是此服务器:
“http://194.232.200.148:8000”
当我在浏览器中键入此文件时,会出现一个文档,该文档会随着时间的推移而增长,因此我假设其是流的数据。
当我在DOM中读取数据时,数据采用音频/ mpeg格式,因此我认为我可以编写一个抓取数据的小程序,然后将其另存为* .mpeg文件。
我的测试程序如下所示:
URL u = new URL("http://194.232.200.148:8000");
InputStream openStream = u.openStream();
long curTime = System.currentTimeMillis();
BufferedWriter bw = null;
FileWriter fw = new FileWriter(new File("C:\\Users\\Lukas\\Desktop\\test.mpeg"));
bw = new BufferedWriter(fw);
while (true) {
int read = openStream.read();
System.out.println(read);
if (read == -1 || curTime + 60000 < System.currentTimeMillis()) {
break;
}
bw.write(read);
bw.flush();
}
bw.close();
} catch (Exception ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
但是,正如我已经担心的那样,这似乎并不容易。
我将数据保存到文件中,但这不是有效的.mpeg文件。
因此,我想问问是否有人有处理此类问题的经验,可以帮助我解决问题,或者至少给我提示该怎么做。
你的,卢卡斯
最佳答案
MPEG文件具有 header ,没有这些 header ,播放器将无法读取它们。另外,您还必须确定实际的格式是什么,它可能是某种受版权保护的格式,您不能只是简单地为其创建 header 并在普通播放器中播放。也许从头开始查找MPEG文件格式结构。
关于java - Java-保存互联网广播流,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11872044/