|
The buffer keeps track on the streams currently been proccessed by the local node. Therefor it sorts the incoming streaming packets (in general there are unsorted e.g. streaming over UDP), synchronizes the streams of each session and copies the data to provide service for the clients.
Session Buffers
Each session normaly contains one or more streams wich should be exported from the buffer synchroniously. To achive this goal the Reader for a session has to hold the timing information. This is done by a delta value describing the delay between the packet generation time (on the root server) and the local system clock. This isn't critical even if the clocks of all nodes aren't sychronized at all because we just talking about time differences. Where as time drifts will cause the buffer to get out of sync. This has to be fixed some day.
Time Drift
TODO!
Stream Buffers
A stream buffer is part of one session buffer and contains a buffer for control packets and a buffer for data packets. The timing will be done by the rtp timestamps. Therefor each stream buffer has to be able to convert stream timing into rtp timing. This is done by the control packet buffer.
Control Packet Buffers
TODO
Data Packet Buffers
TODO
|