【问题标题】:HTML5 Audio StreamingHTML5 音频流
【发布时间】:2011-07-15 10:14:35
【问题描述】:

之前围绕 stackoverflow 有过一些讨论,但从我所看到的情况来看,并没有真正回答这个问题。
我正在尝试实现流式音频 Web 应用程序。与 WFMU 对他们的球员所做的几乎相同 (http://wfmu.org/html5/player.php)。
我能够从他们的流中弄清楚的是,他们正在将流通过管道传输到 PHP 中,不知道采用什么格式,然后将其提供给 jPlayer 以便将 HTML5 呈现给客户端。
他们的工作很棒,但我只是不确定他们如何将音频输入 PHP 以及他们在 PHP 中做了什么以将其呈现为 HTML5 可接受的格式。
任何想法将不胜感激。
看起来 PHP 脚本只是回显了一个音频文件 (http://blogfiles.wfmu.org/DG/stream3.php)。

【问题讨论】:

  • 正如您在问题中指出的那样,这不是 HTML5 问题。他们只是“播放”(就像您的浏览器插件一样)您提到的第二个 URL 的音频源。如果您尝试使用浏览器下载它,您会发现它是一个 mp3(或 ogg),它的输入速度非常缓慢。问题是如何在 PHP 端做到这一点。 HTML5 方面是微不足道的,已经解决了。
  • 是的,这是我的终极问题。抱歉,如果在上面那个冗长的问题中变得有些模糊。尝试确定他们使用哪些 PHP 函数来调用音频,这可能只是一个简单的错误。在那种情况下,我需要知道他们是否在涉及任何网络之前将实时提要编译成 MP3。
  • @MikeSoule - 自从你提出这个问题以来,你在这方面取得了任何进展吗?有什么可以分享的吗?我想做类似的事情。
  • @Jonathan 为延迟回复道歉!是的,我做得很好。我最终没有用 PHP 编写缓冲和流式传输,而是使用了带有 Flash 故障转移的 HTLM5。我使用 SoundManager2 Javascript API 完成了这项工作。这很好用,这是我用于测试的示例:soule.biz/bombshelter.fm/player。 CSS 不太漂亮,但您可以通过查看我的源代码了解 SM2 的工作原理。他们的网站上也有大量示例。顺便说一句,我正在使用 Icecast 进行流式传输,并向 SM2 传递来自该服务器的 MP3 编码流。让我知道你是否有?s

标签: php html audio-streaming


【解决方案1】:

没有要求使用 PHP。对于客户来说,重要的是您发送适当的内容类型和实际内容。在这种情况下,音频/mpeg (MP3) 或 Firefox 的 OGG(目前不适合他们,但绝对可以)。

我怀疑他们使用 PHP 来中继流的原因是他们使用 SHOUTcast 作为流服务器。闲逛了一下,我发现了这个:http://mp3stream.wfmu.org:8000/

请注意,当您在浏览器中点击该 URL 时,您会看到基本信息页面。但是,如果你用音频播放器点击它,你会得到流。 SHOUTcast 服务器根据 User-Agent 字符串决定这一点。如果它在 User-Agent 中的任何位置包含“Mozilla”,则返回此页面。如果没有,则返回流。因此,对于 HTML5 音频播放器,它将使用浏览器的 User-Agent(包含 Mozilla)并且无法访问流。我怀疑他们的 PHP 脚本可以解决这个问题。

PHP 脚本将使用 cURL,使用自己的 User-Agent 连接到流媒体服务器(可以是任何东西,只要它不是“Mozilla”),然后逐块中继到命中 PHP 的浏览器脚本。一块酸橙馅饼。

【讨论】:

  • 这听起来像是解决方案。非常感谢,这至少应该让我走上正轨,因为我已经有一个 IceCast 服务器流。谢谢。
猜你喜欢
  • 2011-06-13
  • 1970-01-01
  • 2012-08-05
  • 2013-10-24
  • 2011-09-29
  • 1970-01-01
  • 1970-01-01
  • 2012-05-22
  • 1970-01-01
相关资源
最近更新 更多