3

我有这段代码可以输入相机并将其显示在网络浏览器窗口中(仅在从网络服务器提供服务时才有效,而不是直接通过打开文件):

<html>
<body>

<video id="video" width="640" height="480" autoplay="true"></video>

<script>
    var video = document.getElementById('video');
    if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
        navigator.mediaDevices.getUserMedia({video: true}).then(function (stream) {
            video.src = window.URL.createObjectURL(stream);
            video.play();
        });
    }
</script>

</body>
</html>

我想将视频直播到一个 URL(例如:到 "/publish/?password=" 如https://github.com/vbence/stream-m

我该如何编码?

谢谢!

4

1 回答 1

4

最佳实践方法,特别是如果您希望有多个客户端查看视频,是流式传输到视频流服务器,然后让视频流服务器将其流式传输到各个客户端。

视频流服务器是开源的或商业的,并且安静地专门具有最大化设备覆盖范围和处理不同网络条件和设备屏幕尺寸/分辨率的机制。自己重建这种类型的功能并非易事。

以下是使用 Wowza 商业流媒体服务器的方法示例(我与他们没有隶属关系):

在此处输入图像描述

更多信息在这里(从上面的照片拍摄):https ://www.wowza.com/products/capabilities/webrtc-streaming-software

支持类似方法的流服务器的源示例是 GStreamer:

更新

一些有关使用 Janus 服务器的信息的链接。这支持来自 WebRTC 客户端的连接,并包含一个流插件:

于 2017-02-03T16:20:59.287 回答