Interactiоn of Mediaserver and Controller
Mediaserver и Controller: the core elements of multimedia data processing
Within a modern multimedia data processing architecture, Mediaserver and Controller serve critical functions. Mediaserver is a high-end flexible server software solution that is designed to capture, process, store and stream video and audio streams along with related metadata. Controller, in turn, facilitates the interaction of Mediaserver with other system components. Controller ensures overall stability and system failure tolerance.
In this documentation section, you can find an overview of the interaction between Mediaserver and Controller.
In this article:
Interaction diagram of Mediaserver and Controller
The diagram below outlines the interaction process between Mediaserver and Controller.
.png?inst-v=a1c1723b-2cb8-42a0-ab3d-3434998cea97)
Interaction of Mediaserver and Controller
Description of Mediaserver and Controller interaction
Seamless interoperability between Mediaserver and Controller, where the Controller acts as the system's intermediary, is pivotal for ensuring high-quality and reliable multimedia data processing.
The interaction between Mediaserver and Controller typically follows this pattern:
VMS initiates the process by sending the Remote Procedure Call (RPC) commands.
Next, Controller performs these commands on the specified devices:
Cameras
Cameras with the preinstalled Agent firmware
Media severs
Bridge devices
The interaction between Mediaserver and Controller operates as follows. To perform its functionality, the Mediaserver is equipped with two network interfaces:
The external interface connects Mediaserver and Controller and ensures their interaction.
The internal interface facilitates communication with cameras located within a NAT network but outside Mediaserver. This setup ensures external access to these cameras.
For data exchange with Controller, Mediaserver uses a callback function. This allows Controller to receive up-to-date information on the following aspects:
The Mediaserver state
Stream states
Camera states
As a result, Controller receives notifications (events) from Mediaserver. These notifications contain details on the processes in Mediaserver: its state, the state of streams, reconnection of Mediaserver to a camera, whether an archive is being recorded, etc. For details, navigate to the Configuration for Webhooks and notification events documentation section.
Received data enables Controller to effectively respond to state changes, log events, assign specific statuses to cameras, and relay information to VMS.
The failure tolerance mechanism
The failure tolerance mechanism is a critical component in multiserver systems, ensuring uninterrupted service despite server issues. Controller ensures failure tolerance in the following way. In multiserver systems, each server is responsible for handling specific streams. Streams from one server can be added to a different server, ensuring they are processed in the event that the original server encounters issues. Thus, the failure tolerance mechanism ensures the system's resilience, allowing it to handle server malfunctions effectively without disrupting the overall service.