The Analytics worker
The Analytics worker – is a service that receives requests to process audio and video streams, captures and processes them, and generates analytics events.
An element of an Analytics worker that receives requests and starts execution of Analytics scripts is an Analytics process manager.
Scripts have access to:
Video streams.
External resources (a Model server) via interfaces provided by an Analytics process manager.
Channels for sending events, messages, and logs to an Analytics process manager.
As a result, scripts communicate with external resources via a process manager.
An Analytics worker is a combination of a Model server and client’s applications (preprocessors). Preprocessors perform the following functions:
Capture and process video streams.
Prepare artifacts for neural networks to process.
Refer to a model server for neural network inference with artifacts and events that indicate the processing parameters.
Receive events on results from a Model server.
Preprocessors consist of the following elements:
Analytics scripts that contain logic of video stream processing.
A so-called “engine” is an element that receives processing requests, launches required scripts, manages them, enriches events from scripts, and dispatches them to relevant destinations.
Analytic script provides an entrance point to an engine. An argument of this function is an object that provides methods for receiving case parameters, inferring neural network, logging, events dispatching and bidirectional communication with the engine.