将实时视频流式传输到浏览器(具有低延迟)

问题描述 投票:7回答:3

我想将实时视频流式传输到低延迟的浏览器。

据我所知,有两个客户:

  • HTML5视频标记
  • Flash视频播放器

有多种方法可以发送流:

  • 使用HTTP的TCP / IP,使用渐进式下载(和html5范围请求)
  • UDP(使用Flash)

并且有多种解决方案来广播流:

  • 使用Apple的HTTP直播流(提供小文件段的m3u播放列表)
  • ...?

并且存在通过因特网发布和分发流的问题。

我需要的是

  • 使用javascript同步视频内容
  • 对于许多观众而言,全国/世界的低延迟
  • 媒体服务器:(自定义)桌面应用(或浏览器解决方案)上传网络摄像头流
  • 其他现有的服务媒体软件解决方案? HTTP Live Stream是否会导致高延迟,因为需要将流分段并上传到小文件中? (排除html5解决方案?) Flash播放器需要什么输入(即web-adress,服务器上的文件?) Flash播放器对服务器的需求是什么? (还有,为很多观众分发?) 如何将视频流上传到Flash? (即现有的软件解决方案/是否可以编写上传网络摄像头流的自定义应用程序?)

非常感谢您回答这个精心设计的问题!!

flash video stream live
3个回答
1
投票

3年后,在2014年,WebRTC正在获得越来越多的采用和普及。虽然它仅限于现代浏览器,但其在质量和性能方面的优势远远超过过时的Flash或有限的HTML5解决方案。

Google Hangouts使用WebRTC技术,第三方服务提供流式传输,广播和连接视频所需的库和服务器。


0
投票

如果您必须像您已经提到的那样考虑应用程序场景中的性能问题,那么您将不得不使用真正的流式传输。因此,您应该设置流服务器和流消费客户端。广泛可用的选项之一是使用red5开源流媒体服务器[http://www.red5.org/]为您的流媒体服务。另一方面,您可以使用flex sdk [http://flex.org/]为您的基于Web的客户端。通常的方法是使用与eclipse完全集成的flash builder,使用red5插件单独构建基于flash / flex的项目。

这里有一个很好的入门教程:

完成该步骤后,您可以尝试根据需要更改流属性(缓冲区大小,延迟等)。


0
投票

您还可以查看Ant Media Server。 Ant媒体服务器低延迟解决方案非常棒。 Ant Media Server能够使用WebRTC技术实现超低延迟流,其提供0.5秒的典型值。任何类型的直播流都可以通过云上的可扩展集群基础架构提供给广泛的客户端。可以使用Android,iOS和JavaScript SDK。 Ant Media Server Github页面:https://github.com/ant-media/Ant-Media-Server Ant媒体服务器Google Group:https://groups.google.com/forum/m/#!forum/ant-media-server也浏览网站:https://antmedia.io

© www.soinside.com 2019 - 2024. All rights reserved.