Each object in the hierarchy communicates by sending messages from one object to another. In fig 9.16 we see how the play command to the conference object, is duplicated and propagated to both the media objects and source objects in turn. Each source object is responsible for playing each source, and does this by doing operations on the index objects, and by using timer events in the event handler.
The similar approach is used when determining the minimum time between the conference recording start time and the arrival of the first packet. The conference object needs to know the minimum for all sources. The method uses is as follows:
each media object evaluates the minimum delay from the set
of delays reported by its sources. This per-media minimum
is then reported back to the conference object.
the conference object evaluates the minimum delay from the
set of delays reported by each media object. This is the
minimum for all of the sources. This minimum value is sent
to all the media objects.
The minimum value is then reported, by the media objects, to
the source objects. Each source subtracts this minimum
delay from the time to play its first packet.
After this process is completed, at least one source will have no delay on start up, and the media for that source will be sent to the user immediately.
Next: Reliable Multicast
Up: The Player
Previous: The Player
Jon CROWCROFT
1998-12-03