问题标签 [internet-radio]

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 投票
1 回答
6430 浏览

android - 在 Android 应用程序中流式传输 AAC 音频

我正在尝试编写一个简单的 Android 应用程序,它将流式传输互联网广播电台(我有 url),但流是 aac 音频。我知道 COREaac,但没有很多关于它的文档。我需要一个单独的解码库来让这个应用程序工作吗?任何建议都会有所帮助,或者如果有人遇到类似问题并解决了它。

谢谢

0 投票
1 回答
1081 浏览

shoutcast - 冰冷的解析

我有一些旧的 java 代码,它读取 Shoutcast 流并从数据中解析“icy-mettaint”值。一个新的流不起作用,我意识到“icy-mettaint”是在 http 标头变量中。为什么此流包含标头中的信息?新的 Shoutcast 标准?它有效,但我需要一个解释。

谢谢

0 投票
1 回答
1007 浏览

stream - 使用 SHOUTcast 介绍 MP3 文件

我有一个 PHP MP3 文件,每次加载时都会更改,并播放不同的广告,我想要的是离开或者在 SHOUTcast 流之前作为 SHOUTcast 介绍文件播放它。

我个人并不想将它放入闪存或创建自定义播放列表文件,但更希望 SHOUTcast 从 URL 地址获取介绍文件。

0 投票
2 回答
4315 浏览

javascript - 覆盖 Node.js HTTP 解析器

http.request()在普通 HTTP 服务器上使用 Node 的基本功能没有问题。我需要http.request()与 SHOUTcast 服务器一起使用(或类似的)。SHOUTcast“协议”与 HTTP 完全兼容,除了一个细节......第一个响应行。

正常的 HTTP 服务器响应:

SHOUTcast 服务器响应:

同样,协议的其余部分是相同的。唯一的区别是HTTP/1.xICY

我想扩展、子类化或以某种方式修改 Node 的http.request()功能,以便我可以使其与 SHOUTcast 服务器一起使用。使用 Node 连接到 SHOUTcast之前已经完成,但只是通过重新发明整个轮子。我宁愿不这样做,因为这相当于一个小的协议差异。

我的问题:有没有办法执行以下操作之一?

  1. 扩展或覆盖Node 的 HTTP 解析器的相关部分。(我怀疑这是可能的,因为解析器似乎是本机代码。)

  2. 创建我自己的代码来解析 HTTP 的相关部分,但尽可能多地重用现有的 HTTP 节点组件。

  3. 创建一个简单的内部代理(或以某种方式中继数据),以便我可以在第一个服务器响应行到达 Node 的 HTTP 解析器之前对其进行修改。

  4. 还有什么?

我也考虑过使用Shred,但它不提供流式响应的选项。(它在触发事件之前等待整个服务器响应完成,这不适用于数据可以无限期运行的流服务器。)沿着同样的思路,我尝试了Request,但它使用 Node 自己的 HTTP 解析器,所以我得到与使用本机 HTTP 客户端相同的解析错误。

0 投票
3 回答
1574 浏览

shoutcast - 获取当前播放歌曲的开始和结束时间

我正在尝试在 android 中实现无线电流切换器。我想做的,按照所需的顺序,是这样的:

  1. 开始播放广播电台
  2. 从该电台获取当前播放歌曲的结束时间
  3. 在 endTime - Delta,我想扫描一个电台列表,我想返回一个在区间 [endTime, endTime + Delta'] 中开始有新歌的电台列表
  4. 从[3]中的结果集切换到一个流,然后重复

所以,我可以播放广播电台(没问题)。我可以在歌曲更改时收到通知(使用streamscraper 获取元数据并在元数据更改时生成通知)。但是,我无法找到的是是否可以执行以下操作:

  1. 获取当前播放歌曲的结束时间
  2. 扫描电台列表,并获取大约在同一时间开始的歌曲(因此获取歌曲的 startTime)或可能即将开始的歌曲(如果这些流中当前歌曲的 endTime 接近或者我实际上可以获得流程序提前)。

如果有人能告诉我这是否可能,我将不胜感激。

0 投票
5 回答
11642 浏览

samsung-smart-tv - 如何提取嵌入在三星智能电视上 Icecast 音频(广播)流中的流式“正在播放”数据

我正在为广播电台创建三星电视应用程序,他们在 Icecast 流中提供“正在播放”信息。是否有可能(以及如何)提取这些信息?

0 投票
1 回答
1003 浏览

android - 流式互联网广播错误android

我正在尝试使用从
http://www.4shared.com/zip/OTcJZZft/StreamingRadio.html
下载的示例播放互联网广播,该示例的工作原理类似于此示例中给出的适用于 Android 的在线广播流媒体应用程序,但问题是我的logcat 不断抛出这个错误:

我无法理解这意味着什么。有人可以解释一下它的含义吗,如果有人可以指导我学习互联网广播流媒体的新教程,那将是很大的帮助。

谢谢。

0 投票
1 回答
788 浏览

ruby - 使用 Ruby 分析音频流

我正在寻找一种分析网络收音机内容的方法。我想编写一个 ruby​​ 客户端,它可以从流中获取当前曲目、下一曲目、乐队、bpm 和其他元信息(例如,广播中的广播)。有人知道怎么做这个吗?以及如何将该流录制到 mp3 或 aac 文件中?

也许有一个图书馆已经可以做到这一点,到目前为止我还没有。

问候

0 投票
2 回答
2825 浏览

html - Firefox 从缓存流而不是实时流

我们构建了一个互联网广播流媒体,利用一个 icecast 服务器通过 html5 音频标签将 MP3 流式传输到 Firefox。但是,有时流媒体会因任何原因(断开连接等)而停止,当您重新启动流媒体时,它会从会话开始开始流式传输,这使我们相信它正在播放浏览器缓存中的内容。

让流媒体播放实际直播的唯一方法是删除 Firefox 中的历史记录。这在其他浏览器中不会发生。如果使用 flash 后备而不是 html5 音频标签,也会发生这种情况。

考虑过使用以下脚本,但认为它不适用于这种情况。

任何见解都会有所帮助。谢谢。

0 投票
3 回答
30302 浏览

audio - 将音频文件流式传输给网站用户/听众的最佳方式是什么

我正在开发一个音乐网站,它将存储在服务器中的音频文件流式传输给用户,音频文件将通过放置在网页中的 Flash 播放器播放..

  1. 我听说我需要使用 流媒体服务器来传输音频文件(比如 2mb 到 3mb 大小)。我需要使用一个吗?

    我找到了一些流媒体服务器软件,例如http://www.icecast.org - 但在他们的文档中,它用于流式广播电台和直播流媒体目的,但我只需要更快地流式传输音频文件和小尺寸(低带宽)质量好..

  2. 我听说我需要先对音频文件进行编码,然后将它们发送给听众,最后音频文件需要再次解码。真的吗?我怎样才能做到这一点?如果我需要使用特殊的网络服务器,我应该在哪里托管我的文件?有没有好的托管服务提供商?

  3. 如果我在普通网络服务器中托管音频文件,他们将使用 HTTP 或 TCP 将我的音频文件传递给用户/侦听器,但我发现 HTTP 和 TCP 不是用于多媒体目的的好方法,例如流式传输音频和视频文件,它们用于交付 HTML 和东西。我发现我应该使用 RSTP 或 UDP 来传输音频文件。我应该使用什么?

  4. 我知道 .MP3 文件的质量比其他格式好得多,但它也为音频文件提供了巨大的尺寸。我应该为音频文件使用哪种格式?

  5. 大多数质量最好的音频文件都超过 7mb,所以我打算使用软件自己转换它们,这样我就可以获得质量好的小文件。如果我正在转换我的音频文件,我应该为我的文件使用什么好的比特率?

  6. 任何已知的用于转换音频文件同时保持良好质量的最佳软件?

注意** - 我知道在网站开始时我不需要复杂的要求,但我想知道他们用于 soundcloud.com 的最佳方式