除了WebRTC之外,有哪些方法可以将实时视频流式传输到iOS上的网页?

时间:2018-03-18 16:06:10

标签: ios video-streaming media-source

WebRTC在服务器上需要太多的处理能力,因此大规模地执行它将成本过高。

对于几乎所有其他平台 - 包括Windows和Mac - Chrome,Safari桌面,甚至IE和Edge以及Android - 都有一个Media Source Extensions API(https://en.wikipedia.org/wiki/Media_Source_Extensions),允许通过websockets发送流并播放它,它的工作原理。问题只出在iOS上。

有什么比HLS更好(低延迟)对我有用吗?

如果没有,是否有一个WebRTC服务器比Kurento Media Server(https://github.com/Kurento/kurento-media-server)免费且可扩展性更好/更稳定?

有一个jsmpeg播放器http://jsmpeg.com/,但它只是MPEG-1,因此需要不可接受的带宽量。有broadway.js但它不支持音频...

2 个答案:

答案 0 :(得分:0)

  

有什么比HLS更好(低延迟)对我有用吗?

HTTP Progressive是一项很好的技术。它可以在比DASH或HLS等分段技术低得多的延迟下运行,并且在服务器端资源方面要求很少。查看服务器的Icecast,以及FFmpeg作为您的来源。

通过Web套接字发送视频毫无意义,除非您正在实施双向协议。这对于ABR支持来说并不常见,但它绝对不是最有效或最简单的方法。

答案 1 :(得分:-1)

由于您不希望自己实现webRTC并且需要比HLS更低的延迟,我更喜欢媒体服务器。市场上有许多媒体服务器。但是,如果您正在寻找免费的开源媒体服务器,那么您的选择仅限于少数。

我建议使用免费开源的red5媒体服务器。请查看this链接以查找有关red5的更多信息。如果您使用免费的红色5媒体服务器,您几乎不需要了解java。 Red5还有一个名为red5 pro的付费版本,它具有更好的webRTC支持和更高的功能。 Red5主要用于带有flash player pulgin的rtmp,对于red 5 webRTC流式传输来说它是相当新的。

此外,您可以使用有限数量连接的wowza streaming engine跟踪版本。所以这些是最简单的选择。