[vlc-devel] [PATCH] access: live555: fix spurious PCR_RESET on RTCP clock synchronization
Rémi Denis-Courmont
remi at remlab.net
Mon Aug 8 15:35:05 CEST 2016
Le 2016-08-08 14:58, Ludovic Fauvet a écrit :
> On Fri, Aug 5, 2016, at 23:41, Francois Cartegnie wrote:
>> ---
>> modules/access/live555.cpp | 61
>> +++++++++++++++++++++++++++++++++-------------
>> 1 file changed, 44 insertions(+), 17 deletions(-)
>
> Hello François,
>
> I was quite doubtful at first but this patch indeed fixes the issue
> of
> the PCR RESET on RTCP sync that can be reproduced with the Axis
> camera I
> have in my office. I cannot challenge what has been said by Rémi but
> still, I see this patch as an improvement over the initial code which
> is
> wrong and partially broken.
>
> So except if someone has a strong opinion, I would be in favor of
> pushing it.
There are basically two cases. If you have a single ES, then this patch
is overkill. You just need to "stitch" the PTS from before the first
RTCP-SR with those after it. I am not sure if live555 provides the
necessary infos, but if it does not, you can't really make it up anywya.
If you have more than one ES, then the relative offset *between* the
ESes *will* change at first RTCP-SR (or actually, it will become
well-defined). There you *must* reset the PCR. If you don't, the
different ESes will be permanently out of sync. Repeating myself here,
but the glitch at first RTCP-SR is a known "feature" of the RTP/RTCP
protocol. You can't avoid it unless you wait for first RTCP-SR on each
ESes before play out.
--
Rémi Denis-Courmont
Looking for a job
http://www.remlab.net/
More information about the vlc-devel
mailing list