如何从HTML和JavaScript发布实时视频流?

时间:2017-02-02 08:23:40

标签: javascript html html5 video live-video

我有这段代码,它输入相机并在网页浏览器窗口中显示(仅当从网络服务器提供,而不是直接打开文件):

<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>

我想将视频直播到网址(例如:&#34; / publish /?password =&#34;如同{{3} })

如何编写代码?

谢谢!

1 个答案:

答案 0 :(得分:2)

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

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

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

enter image description here

此处有更多信息(从上图中拍摄):https://www.wowza.com/products/capabilities/webrtc-streaming-software

支持类似方法的流媒体服务器的一个源代码示例是GStreamer:

<强>更新

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