Open source
Perennos DEAD AIR
A 24/7 stream watchdog: off-air, frozen picture, silence.
Free and open source.
Install, open, done
Install
You need Python 3.11 or newer, plus FFmpeg and ffprobe on your PATH. Dead Air does not install system binaries or run an administrator command for you. Get the source, then install FFmpeg yourself; package availability depends on your machine.
git clone https://github.com/Perennos/dead-air.git cd dead-airwinget install --id Gyan.FFmpeg.Shared -e # Windows sudo apt install ffmpeg # Debian, Ubuntu sudo dnf install ffmpeg # FedoraMake sure ffmpeg and ffprobe both resolve from a new terminal. Only a YouTube source needs the optional yt-dlp adapter; the README on GitHub covers it.
Open
Check the example configuration. This only parses the example file: it does not check FFmpeg, contact a source, capture media, send a notification, or prove production readiness.
python dead_air.py validate --config dead-air.example.tomlDone
Copy the example to a private configuration file and add only streams you own or are authorized to monitor. Then run a short watch, or the foreground 24/7 path.
python dead_air.py watch --config dead-air.toml --max-cycles 3 --json python dead_air.py watch --config dead-air.toml --continuous --jsonContinuous mode is not evidence of a completed 24-hour soak or of production readiness. Test it on your own authorized streams before you rely on it.
What it won't do
It does not control a stream, restart an encoder, change broadcast scenes or operate OBS. Its commands report observations.
It does not import browser cookies or sign in to stream accounts. A public URL is not a promise that a provider will expose usable media.
It is not a hostile-URL sandbox. It trusts operator-owned configuration and local tool paths, so do not feed it untrusted URLs or configurations. Public targets are the default; private and loopback targets are denied unless you opt in and name them. TLS certificate verification stays on.
Source and original artwork are licensed under the Apache License, Version 2.0, with the fonts under their own terms: Unbounded and IBM Plex Mono (renamed Perennos Mono Subset), each under the SIL Open Font License 1.1. No generated images were used.
The artwork draws on the living Día de Muertos tradition as remembrance and celebration: papel picado, cempasúchil, calaveras and the ofrenda. These are not costume or horror props. DEAD AIR welcomes an artist from the culture to collaborate on the artwork and to correct the project; those corrections should be accepted and credited.