node-rtsp-stream-jsmpeg

RTSP stream through WebSocket for jsmpeg decoder

Usage no npm install needed!

<script type="module">
  import nodeRtspStreamJsmpeg from 'https://cdn.skypack.dev/node-rtsp-stream-jsmpeg';
</script>

README

node-rtsp-stream-jsmpeg

First of all, it's a based on node-rtsp-stream-es6 and [node-rtsp-stream]

Differences with the original modules

Description

Stream any RTSP stream and output to WebSocket for consumption by jsmpeg. HTML5 streaming video!

Requirements

You need to download and install FFMPEG in server-side.

Installation

npm i node-rtsp-stream-jsmpeg

Server

const Stream = require('node-rtsp-stream-jsmpeg')

const options = {
  name: 'streamName',
  url: 'rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov',
  wsPort: 3333
}

stream = new Stream(options)
stream.start()

Client

<!DOCTYPE html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>DEMO node-rtsp-stream-jsmpeg</title>
  <script src="https://jsmpeg.com/jsmpeg.min.js"></script>
</head>
<body>
  <div>
    <canvas id="video-canvas">
    </canvas>
  </div>

  <script type="text/javascript">
  var url = ws://localhost:3333;
  var canvas = document.getElementById('video-canvas');
  var player = new JSMpeg.Player(url, {canvas: canvas});
  </script>
</body>

You can find a live stream JSMPEG example here : https://github.com/phoboslab/jsmpeg/blob/master/stream-example.html