The Auto Configuration and Discovery Process
The auto configuration and discovery process
In order to allow a large mix of device to be controlled by the same media server and in order to avoid the painful process of creating and matching profiles between the media server and the real device the protocol is auto configured.
In order to do so the protocol works in 2 phases:
In order for a device to be used by a media server it must be identified on the network.
Several times per minutes the media server broadcast a discovery message. Once a device reply to such message it will be registered by the media server. The user has then the freedom to start assign video to the discovered display device. Once a display device has been discovered and assigned to one output of the media server it will be remembered. Each time the media server is restarted it will wait for the device to answer to the discovery message, once the display is registered it will automatically start receiving the video assigned to it.
During the discovery phase the media server can assign the IP address of the display devices. It does this by detecting devices that have an IP address of 0.0.0.0 and uses the unique device ID to distribute the IP addresses.
Once a device is registered to a media server and if the user map video onto its display it will start receiving the video frames.
The device can also be query for parameters and if it support it the media server can change parameters into it. Parameters can include brightness or contrast.
Robustness to errors
Because the unicast messages are using TCP connections it will ensure that no corrupt parameters are set into the device and that no corrupted pixels can be presented to the display device.
If a network connection close because a cable is unplugged or because the device is shut down the media server will wait for the next reply to a discovery message before to try to re open a connection and re start the real-time phase with the display device.
The Media server wait for the display device reply to a discovery message before eventually start sending video frames, here is the sequence with a single display device: