Constatus is a digital video recorder and streamer.
Apart from simply recording video, it can also monitor, convert, transform, filter and multiplex video-feeds. Feeds like IP-cameras, "video4linux"-devices, the new PipeWire system, pixelflut, VNC-servers, Raspberry Pi-cameras, etc.
An important feature is checking for motion. If it sees anything moving, it can start recording and stops recording when the motion stops (surveillance software).
While Constatus monitors the camera, you can use the built-in webserver (and VNC server) to view the video stream concurrently.
It runs on most if not all hardware that supports Linux: from Raspberry Pi 1B systems up to AMD ThreadRipper and Intel Xeon systems. Since version 4.2 it also runs on 64-bit windows (using WSL or by using cygwin), FreeBSD 12.1 and MacOS X.
It has plug-interfaces for input-, output- and meta-processing.
Note that these lists are not complete. New features are constantly added.
Constatus is on GitHub.
Also the sources has a "examples/"-directory containing example configuration-files.
Tip for mplayer & low framerate mjpeg streams: use the "-nocache" switch or it may not start at all. vlc works fine, of course.
RevSpace is running constatus on 10 cameras
Constatus can also stream 3D video (not a live demo).
Termcamng streams the output of a terminal application using MJPEG over HTTP.
Via GitHub you can sponsor me and my work: