我想录制一个在中午播放的互联网广播节目,我听不到。

收音机的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/

10-09 19:43