[Live-devel] Clock drift compensation
Gilles Chanteperdrix
gilles.chanteperdrix at xenomai.org
Wed Dec 25 03:36:44 PST 2013
On 12/24/2013 03:42 AM, Ross Finlayson wrote:
> No, although you're sort of on the right track (because the RTCP "SR"
> arrival times can be used to compute the network 'jitter' (see RFC
> 3550) - and FYI in LIVE555 this jitter computation is made available
> to clients via the "RTPReceptionStats" database).
>
> The way for a client to detect (and compensate for) the drift between
> the server and client clocks is to monitor the size of the client's
> playout buffer.
>
> If the playout buffer keeps increasing over time, then the server's
> clock is faster than the client's. The client can compensate for
> this by playing out frames faster, or perhaps by dropping frames
> occasionally.
>
> If the playout buffer keeps emptying - despite starting at a
> reasonably large level (to allow for network jitter) - then the
> server's clock is slower than the client's. The client can
> compensate this for playing out frames slower, or perhaps by
> duplicating frames occasionally.
Makes sense, Ok.
>
>
>> Now, the question is: what is the best place to implement this? In
>> the application?
>
> Yes - in the media player application (in particular, by monitoring
> its playout buffer). But do you really want to bother with this?
> VLC is only one of the many media players out there (and you've
> already dealt with their developers :-). I thought your project was
> to develop a server?
This is a separate project. The server is almost finished anyway.
Thanks.
--
Gilles.
More information about the live-devel
mailing list