admin管理员组

文章数量:1321241

I have this piece of code which takes input the the camera and displays it within the web browser window (works only if served from a web server, not directly by opening a file):

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

I'd like to live-stream the video it to a URL (example: to "/publish/?password=" as in )

How do I code that?

Thanks!

I have this piece of code which takes input the the camera and displays it within the web browser window (works only if served from a web server, not directly by opening a file):

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

I'd like to live-stream the video it to a URL (example: to "/publish/?password=" as in https://github./vbence/stream-m)

How do I code that?

Thanks!

Share Improve this question asked Feb 2, 2017 at 8:23 ikevin8meikevin8me 4,3137 gold badges46 silver badges86 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 4

The best practice approach, especially if you expect to have multiple clients viewing the video is to stream to a video streaming server and then have the video streaming server stream it to the individual clients.

Video streaming servers are available opensource or mercial and are quiet specialised with mechanisms to maximise device coverage and to handle different network conditions and device screen size/resolutions. rebuilding this type of functionality yourself would not be trivial.

Below is an example of the approach using Wowza a mercial streaming server (I have no affiliation to them):

More info here (from where the above picture was taken): https://www.wowza./products/capabilities/webrtc-streaming-software

An source example of streaming servers which will support similar approaches is GStreamer:

  • https://gstreamer.freedesktop

Update

Some links with info on using the Janus server. This supports connections from WebRTC clients and includes a streaming plugin:

  • https://github./meetecho/janus-gateway
  • https://github./meetecho/janus-gateway/blob/master/plugins/janus_streaming.c

本文标签: How to publish a live video stream from HTML and JavaScriptStack Overflow