StreamHelpers.com

ReStreamer Watchdog

Automatically pushes a looping fallback video to your streaming platforms when your camera / source stops transmitting — and stops it when the source returns. Works with datarhei Restreamer.

What you need

A running datarhei Restreamer container.
Docker (these instructions assume Unraid, but any Docker host works).
A fallback video file (any .mp4 with video + audio).

Install — one command

On your Docker host, run this. It creates the container, downloads the app from this site, installs ffmpeg, and starts automatically:

docker run -d \
  --name restreamer-watchdog \
  -w /app \
  -p 1975:1975 \
  --restart unless-stopped \
  -v /mnt/user/appdata/restreamer-watchdog:/app \
  node:18 \
  bash -c "apt-get update && apt-get install -y ffmpeg curl && cd /app \
    && curl -fsSL -O https://streamhelpers.com/restreamer-watchdog/server.js \
    -O https://streamhelpers.com/restreamer-watchdog/package.json \
    && npm install && node server.js"

Not on Unraid? Change /mnt/user/appdata/restreamer-watchdog to any folder on your host.

Add your fallback video

1 Copy your fallback video into the app folder on the host: /mnt/user/appdata/restreamer-watchdog/
2 Remember its exact filename (e.g. fallback.mp4) — you'll enter it in the dashboard.

Configure

1 Open the dashboard: http://YOUR-SERVER-IP:1975/
2 Click Configure and enter:
3 Click Save & Start Monitoring. Done.

How it works

The watchdog logs into Restreamer and checks your ingest every few seconds. If the source goes unhealthy while outputs are live, it starts pushing your fallback video to each platform. When the real source returns, it stops the fallback automatically.

Heads up: the switch to fallback isn't perfectly seamless — each platform reconnects when it cuts over, so viewers may see a brief interruption before the slate appears. Also, the dashboard has no login and stores your Restreamer credentials in config.json, so keep port 1975 on your local network only.

Files

README.md  ·  install.txt  ·  .env.example  ·  docker-compose.yml  ·  Dockerfile  ·  server.js  ·  package.json  ·  restreamer-watchdog.xml

Provided as-is, with no warranty and no support. This tool decides when to cut your live broadcast over to a fallback video, and it can get that wrong. There is no help desk and no obligation on anyone to answer a question or fix a bug. You are responsible for securing your installation and for testing before you rely on it. See the disclaimer.
Free and as-is — no warranty and no support, donations included.
StreamHelpers.com  ·  tooling for multi-platform streamers
Another fine product of Blue Soup Enterprises