[Live-devel] Absolute seekStream - problem with timestamps

Francisco Feijoo francisco at eyelynx.com
Tue Sep 10 14:14:05 PDT 2013


Hello Ross,

Thanks for your quick response.

Yes, the client is synchronized. I also checked that all the frames sent
from the server where received on the client at the moment of pause (I log
all of them in both sides and are all sent/received).

I'll check if I can reproduce the problem with the test programs.

Thanks.

2013/9/10 Ross Finlayson <finlayson at live555.com>

> I have subclassed OnDemandServerMediaSubsession and added support for
> 'trick play' using absolute times. All is working fine but the client
> (which is also using Live555) is receiving wrong timestamps from the server
> after pause/play is triggered. Basically I follow these steps:
>
> 1 - Client connects to the server for live video - OK
> 2 - Pause the client (sendPauseCommand) - OK
> 3 - Wait for some seconds and play the client again
> (sendPlayCommand("YYYYMM....")) - The frames are correct but the client
> reports wrong timestamps for 1 or 2 seconds, and then shows the correct
> timestamps.
>
>
> Assuming that the presentation times during this time are all
> RTCP-synchronized (see <
> http://www.live555.com/liveMedia/faq.html#rtcp-synchronization-issue>), I
> wonder if the problem might be that these 'extra' packets (the initial ones
> with the incorrect presentation time) are simply old packets that were
> buffered inside the client OS's socket receive buffer at the time of the
> pause?  (If that's the case, then there's nothing much you can do about
> this, other than reduce your client OS socket buffering.)
>
> You could test this by sending (after your initial PAUSE) a
> non-absolute-time "PLAY" command with a "start" parameter of -1 (which
> means 'resume without seeking')
>
>
> Looking at the implementation of OnDemandServerMediaSubsession I see that
> the other seekStream (with NPT) is changing the rtpSink presentation times
> with rtpSink->resetPresentationTimes(), while the other is not. Could this
> be the problem?
>
>
> No, because that doesn't actually change any presentation times; it just
> resets variables that are used to compute "getCurrentNPT()", which doesn't
> get called in your case, because you're seeking by absolute time.
>
>
> Ross Finlayson
> Live Networks, Inc.
> http://www.live555.com/
>
>
> _______________________________________________
> live-devel mailing list
> live-devel at lists.live555.com
> http://lists.live555.com/mailman/listinfo/live-devel
>
>


-- 
Francisco Feijoo
Software Engineer
EyeLynx Limited

T: +44 020 8133 9388
E: francisco at eyelynx.com
W: www.eyelynx.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20130910/c04044fc/attachment-0001.html>


More information about the live-devel mailing list