将 getUserMedia 流式传输到 Icecast 服务器?

Posted

技术标签:

【中文标题】将 getUserMedia 流式传输到 Icecast 服务器?【英文标题】:Stream getUserMedia to an Icecast server? 【发布时间】:2012-08-12 00:02:33 【问题描述】:

有没有办法将 webrtc 的 getUserMedia 创建的本地 blob(视频和音频)流式传输到 Icecast 服务器,从而可以使用 html5 进行直播?

特别是在以下示例中(来自 Justin Uberti 的 2012 年 Google I/O 视频)我可以捕获音频/视频并在本地视频元素中播放:

<script type="text/javascript">
var onGotStream = function(stream) 
  var url = webkitURL.createObjectURL(stream);
  video.src = url; //

navigator.webkitGetUserMedia(video: true, audio: true, onGotStream, null);
<script>

<video = id='video' autoplay='autoplay'/>

但是,我不想将视频源设置为本地 blob,而是将流发送到 Icecast 服务器,然后使用指向 Icecast 服务器的视频元素播放该实时流。

这可能吗?我该怎么办?

谢谢!!

【问题讨论】:

你发现什么了吗? @BobSmith ***.com/questions/20850396/… ***.com/questions/20850396/… 【参考方案1】:

看看这个

https://github.com/webcast/webcaster

它捕获 getUserMedia PCM,在您的浏览器中使用 JavaScript 将其编码为 MP3 格式,通过 Websockets 将编码的 MP3 数据发送到 Liquidsoap http://liquidsoap.fm/,然后 Liquidsoap 可以将该流广播到 Icecast 服务器。

【讨论】:

以上是关于将 getUserMedia 流式传输到 Icecast 服务器?的主要内容,如果未能解决你的问题,请参考以下文章

如何将视频从浏览器提交/流式传输到服务器?

将音频从浏览器流式传输到具有特定 MIME 类型的 node.js 服务器

使用用户摄像头实时流式传输网页

我可以将使用 getUserMedia 收到的值传输到输入文件吗?

替换移动浏览器的 getUserMedia()

访问多个摄像头 javascript getusermedia