问题标签 [icecast]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4811 浏览

android - 从icecast服务器Android流式传输获取曲目信息

我有一个来自 icecast 服务器下载的流,我可以通过执行以下操作来获取标题中的信息:

while (cn.getHeaderField(pos) != null) { x=cn.getHeaderFieldKey(pos); y = cn.getHeaderField(x); Log.e(":::::",""+x+" : "+y); 正++;}

当我这样做时,我收到的所有标题都显示为:

内容类型:音频/mpeg icy-br:64 ice-audio-info:ice-samplerate=22050;ice-bitrate=64;ice-channels=2 icy-br:64 icy-description:RadioStation icy-genre:古典, New Age, Ambient icy-name : RadioStation 示例 icy-private : 0 icy-pub : 1 icy-url : http://exampleradio.com 服务器 : Icecast 2.3.2 缓存控制 : no-cache

但是,如果我在 mplayer 中打开我的流,我会得到:

每次更改歌曲时,新的曲目信息都会以相同的方式在 mplayer 中发送。

在 android 中,当我尝试读取 icy-info 时,我返回的所有内容都是 null。另外,当我从流中缓冲时,我将如何从标头中检索新信息?因为即使我尝试在缓冲时读取我已经知道存在的内容的标题,例如:

我得到的只是空值。

我希望这是有道理的,我可以根据要求发布更多代码。

0 投票
8 回答
62702 浏览

html - 如何使用 HTML5 播放直播/冰播流?

是否可以使用 HTML5 播放广播/冰播流?

如果是这样,我应该如何实施?

0 投票
0 回答
627 浏览

iphone - 如何通过 RTMP 对 Flash 播放器流进行控制访问?

我正在使用 ICECAST,我正在通过 Flash 播放器和 iPhone 流式传输 AAC/HE-AACv2 音频/视频文件。两者是分开的。但是当我在 WINAMP 中提交 url 以流式传输时,它正在请求用户名/密码。但是当我将它与 Flash 播放器一起使用时,它才开始流式传输。我的情况是我想对网站和 iPhone 应用程序使用相同的流媒体 (RTMP),并且我想对我的 Flash 播放器施加控制访问权限,以验证谁可以看到流媒体视频。

因此,我只需要允许经过身份验证的用户访问 Flash 播放器或拒绝播放。现在,我的提供商不支持对 Flash 播放器的控制访问,但我需要这样做……你能说我该怎么做吗?

任何形式的帮助将不胜感激。

谢谢。

0 投票
1 回答
1448 浏览

c# - 如何在 C# 中从 IceCast 流中编写播放列表

我想监控一个icecast流并写入所有文件信息(实际播放的mp3),我可以访问本地播放列表以供以后处理。

任何想法如何做到这一点?

0 投票
3 回答
25394 浏览

php - 使用 PHP 显示 Icecast2 统计信息

我在使用 PHP 查看统计信息(观众、当前播放的歌曲等)时遇到了一些麻烦,我找不到任何信息如何做到这一点。

Icecast2 包含几个 XLS 文件,我可以将这些文件与 PHP 一起包含到我的站点,但我不想更新包含每 5 秒一次的 DIV,并且不适用于 XLS 文件。

谢谢!

0 投票
2 回答
2151 浏览

html - Minimizing latency in streaming audio with html 5

I'm trying to listen to a live audio stream on a webpage with a latency of less than 3 seconds. So far with ogg vorbis streams generated using ices & icecast, I've been unable to get latencies less than 7 seconds. All players I've used so far (html5 audio tag in Firefox, Opera, Safari; VLC as well) seem to introduce similar delays. It's unclear at this point how much latency is introduced in ices/icecast vs. the client-side player. I've tweaked ices and icecast settings, to no avail.

Has anyone achieved better latencies than this in a similar ices/icecast setup? I wouldn't expect an ogg vorbis decoder (be it html 5 in a browser, VLC, or whatever) to delay an audio stream for multiple seconds. Am I incorrect? I can't find any info on controlling buffer sizes or the decoding in browsers.

With a different architecture (html 5, firefox, WSGI server serving wav format audio), I was able to achieve latencies around 1-2 seconds. By default, the firefox began playing the wav file 5+ seconds behind, but I could advance playback by setting audio.currentTime ahead, and only be 1-2 seconds back (somewhat fragile). However, I'd much prefer to use icecast, and streaming wavs obviously doesn't scale.

Thanks in advance for any ideas.

0 投票
1 回答
1020 浏览

streaming - 流式传输 mp3 的最佳方式

我需要组织从我的机器到世界其他地方的 mp3 流。人们建议我使用MPDIcecast2作为前端。一切都很好,除了一件事——音乐以Ogg Vorbis的形式流式传输,而不是我真正需要的。

有一段 MPD 的配置文件:

但是,Icecast 的状态页面显示它是流媒体 ogg,而不是 mp3。MPD 的版本是 0.13.2,在 Debian Lenny 上运行。怎么了?

任何帮助将不胜感激。

PS 我已经编译了 LAME 编码器。

0 投票
1 回答
1822 浏览

audio - Icecast 元数据提取在输出音频数据中产生伪影

我正在尝试(在NodeJS中):

  1. 连接到Icecast互联网音频流。例如:http: //icecast3.977music.com/comedy
  2. 解析响应标头并提取icy-metaint值。
  3. 将原始音频数据写入文件,同时从音频流中提取元数据字节,以便:
    • 当元数据到达时拦截并解析它。
    • 不要在输出文件中包含元数据字节,这样就不会因为注入的元数据而产生音频伪影。

在 SmackFu的“非官方”Shoutcast 元数据协议页面之后,我已经能够做到这一点:

https://gist.github.com/e7474421dcb25e011620

基本上,我能够在预期的时候提取元数据(在gist中包含的流转储的最开始只有 1 个元数据事件)。那部分似乎工作正常。

问题是输出 MP3 文件在整个文件中都有明显的音频伪影,大概是在元数据字节到达时。但是,我肯定会提取这些元数据字节,而不是将它们包含在输出文件中,所以这很奇怪。

上面链接中的协议文档没有说需要对输出文件做任何其他事情,但显然我仍然做错了什么。有人知道音频流还需要做什么吗?提前致谢!

0 投票
1 回答
1491 浏览

java - 将 Java 音频流式传输到 icecast/shoutcast 服务器?管道和标准输入?

我正在使用一个名为 JavaMod 的 Java 音乐库。我想将 Java 音频系统的输出流式传输到广播服务器。

“ezstream”是一个命令行工具,它接受标准输入并将其编码/流式传输到 icecast/shoutcast 服务器,但我不确定如何将 ezstream 连接到 java 音频系统。

如何将“ezstream”的标准输入“注册”为 Java 音频设备,以便将写入 java 的 AudioSystem.sourceDataLine 的示例流定向到 ezstream 的标准输入?

0 投票
1 回答
378 浏览

c# - 如何检索 IceCast-Stream 的块长度?

IceCast 与 Shoutcast 非常相似,后者通过 icy-mettaint 在标头中为您提供其数据块长度。

我使用的流(IceCast 流)似乎没有这样的价值。

如何检索数据块的长度?