如何使用HTML5直播,没有Flash?

问题描述 投票:12回答:4

问题:我需要我的客户能够将他们的网络摄像头流式传输到我的流媒体服务器(例如Wowza服务器)。我正在用PHP构建我的网站。我经历了各种流媒体网站,如twitch.tv,livestream.com,发现他们都使用第三方广播软件,如Wirecast,XSplit广播公司,OBS等,将网络摄像头信息流传输到服务器。然后我遇到了像vLineOpentokrtc这样使用WebRTC进行视频聊天的网站。

我的问题:所以,我的问题是,我是否可以将流发送到像Wowza这样的广播服务器(这样他们就可以广播我的直播流)而不使用只有WebRTC的广播软件?如果是,那怎么样?如果,不,那么其他选择是什么?

PS。我不想在这里使用Flash,ActionScript。

php html5 webrtc live-streaming wowza
4个回答
2
投票

您基本上需要一个集成了伪WebRTC客户端的服务器。 WebRTC可以获取流,但在设置PeerConnection之前无法启动流。您可以尝试使用各种服务器/网关,如JanusKurentoLicodeFreeSwitch等。

WebRTC生成的MediaStream也可以直接附加到HTML5 <video>标记。


2
投票

将WebRTC用于这样的用例会导致服务器端的计算成本很高,这是一种相当新的技术,这意味着如果您知道自己在做什么,就应该使用它。

我的建议是坚持使用Flash或MPEG-DASH - 除非您需要的东西必须具有非常低的延迟,并且您可以通过较小的解决方案规模付费。


1
投票

除非我误解,否则我认为您希望将视频流式传输到服务器(使用“普通”实时流式传输机制进行分发),而不是使用WebRTC从服务器传输视频。

如果是这样,WebRTC将起作用,尽管您需要服务器端实现一套相当完整的WebRTC协议,包括视频解码。这些存在,但当然不是直接在PHP中。这将处理从客户端获取实时音频和视频,而无需客户端上的插件,包括带宽适应和纠错。

在服务器上解码数据后,您就可以将视频+音频数据流输入到实时流编码器中以进行流式传输。


1
投票

Wowza确实支持您所需的内容,以便成为WebRTC场景中的另一个对等方。从那里,您可以以媒体服务器通常执行的任何方式重新分发流。

此功能仍处于“预览”模式并具有一些限制,但在大多数情况下都可以使用。您可以通过https://www.wowza.com/products/capabilities/webrtc-streaming-software申请访问

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