Skip to content

Working

Hoël Vasseur edited this page Apr 8, 2016 · 7 revisions

You are probably wondering how does this standard work. It is not that complicated. first thing you should now is that there are 3 different ways of working: defaultStartUpMode, MaintenanceMode, and normalMode.

Of course, we will here describe the normalMode.

In a normal Mode of working, OpenVivoe will be started generally on at least to devices. Let suppose that is the case, here, we are supposing that one device is a Service Provider, i.e. a source, it has a camera connected to it; the other device will be a Service User, i.e. a Consumer/Receiver, it has a screen (in most case) connected to it. There will also be a third device. It will be the manager, however, it does not need to have OpenVivoe installed on it. Indeed, the manager will only control the streams (beginning/ending) using SNMP requests.

In a normal mode: the manager will ask for the Service User to listen to a specific multicast IP address. This will be the multicast IP address on which the Service Provider will send its stream. Thus, the Service User will join the multicast group and will notify the manager about it. By joining the multicast group, the Service Provider, will listen to SAP/SDP announcement sent on port 5004. SAP/SDP are the protocols used in OpenVivoe to announce the steams. Then the manager, will ask to the Service Provider to start streaming. The Service Provider though, will send start its stream, build a SDP message and send a SAP payload over UDP on port 5004 and on its multicast address. This SDP message will be received by the Service User that will use it to decode the stream. The Service User will start displaying the stream.

After a while, the manager will ask to the Service Provider to stop its stream. The Service Provider will send to the multicast group a SAP/SDP deletion message and stop its stream. It will notify the manager. The manager will ask to the Service User to strop displaying the stream. The Service User will execute itself.

This behavior can be illustrated with the following diagram:

openvivoe_complete_sequence_normal_mode

It should be a bit clearer now. But maybe you still have questions. This other diagram will show you the same sequence but under a different point of view. Indeed, while the first diagram was show the sequence over time this provides a view of the sequence over space. We can see the two devices and a part of their vivoe-mibs.conf configuration file. It does perform the same sequence as the one described earlier.

openvivoe_normal_mode_graph