如果我不能使用 WebRTC,我现在可以用啥来直播视频

Posted

技术标签:

【中文标题】如果我不能使用 WebRTC,我现在可以用啥来直播视频【英文标题】:If I can't use WebRTC, what can I use right now for live streaming video如果我不能使用 WebRTC,我现在可以用什么来直播视频 【发布时间】:2014-02-13 01:06:10 【问题描述】:

我正在 node.js 中开发一个网络应用程序,以允许客户端通过另一个客户端将从他们的网络摄像头广播的唯一 url 观看实时流视频,即http://myapp.com/thevideo

我了解 webRTC 在足够多的浏览器中仍然不支持,因此无法使用。 我还想保存这个视频流,以便稍后在应用程序中查看。

当我尝试缩小解决方案以使其发挥作用时,事情变得有些混乱。 我想获得一些关于行之有效的解决方案的建议,以使这项工作在桌面和移动设备上运行?任何提示都会很棒。

【问题讨论】:

这是一个非常大的话题。没有一种适合所有解决方案的尺寸。你有什么要求?有多少流?每个流的观众如何?需要什么延迟?需要什么质量?移动的?它应该在哪些平台上播放?你需要它来处理代理吗?您有多少可用的服务器资源? @szatmary 你知道有什么像样的节点项目可以作为起点吗? @szatmary 我没有所有这些问题的答案。我只是需要一些东西才能开始,但解决方案应该能够扩展。我想说我需要一个可以在移动设备上工作的解决方案。质量可能是非高清的,但还不错。它应该可以在最流行的桌面浏览器 Chrome、IE、FF、Safari 以及移动 Chrome 和 Safari 上播放。 【参考方案1】:

我会根据有限的细节提出一个快速的建议。我会使用 ffmpeg 编码为 HLS。这种格式将在 ios 上本地播放,在 Mac 上播放 safari。对于所有其他平台,要么提供带有flash前端的rtmp流,要么使用可以播放HLS的jw player 6商业版。或者使用 wowza 服务器为您处理这一切。

【讨论】:

以上是关于如果我不能使用 WebRTC,我现在可以用啥来直播视频的主要内容,如果未能解决你的问题,请参考以下文章

用啥来替换python中的接口/协议

我可以用啥来替换嵌套的异步回调?

我应该用啥来比较 DBNull ?使用 DBNull.Value 或 ToString().IsNullOrEmpty()

我应该用啥来替换 WinAPI Beep() 函数?

在我的 Qt 应用程序中,我可以用啥来代替 sleep 和 usleep?

你用啥来单元测试C代码? [复制]