I've produced a similar product: opencv based, running in a docker, it has a internal web server UI allowing configuring of video inputs (rtsp cameras, etc) and multicam display, event-based recording, precipitation detection and much more. The UI (http jqueryui) does some similar things (mouse-drag software zoom). That project also IDs and tracks people/vehicles. So some overlap with your project.