[Live-devel] Frames from the future - or maybe not
sampsa
sampsa.riikonen at dasys.fi
Sat Dec 10 03:45:03 PST 2016
On 10.12.2016 00:07, Ross Finlayson wrote:
> First, you should use the term “presentation time”, not “timestamp”. (The word “timestamp” typically refers to the RTP timestamp, which LIVE555 programmers never need to concern themselves with.)
>
> Yes, it is perfectly normal for video frames’ presentation times to be non-monotonic - i.e., not always increasing. The reason for this is that frames are sent in ‘decoding order’ - i.e., in the order that they are to be fed into a decoder, not the order in which they are displayed on a screen (i.e., the presentation time). Because of ‘B frames’ (a MPEG term; they might be called something different in H.26*), some video frames depend upon a frame that will be displayed later; therefore the later frame will actually be sent first.
>
> “Nothing to see here. Move along” :-)
Thanks Ross.
I guess I did not explain myself clearly enough.
*** It is not about the frames arriving in weird order *** , in fact,
they arrive in monotonic presentation time order (I just use baseline
and I and P frames), like this (number being the presentation timestamp):
13 14 15 16 17 18
All good. But then I check at what time they arrive to the client (by
looking at the client's system clock):
13 arrives to client at client time 13.5 .. i.e. it arrives after the
presentation time, as one would expect (13<13.5)
14 arrives to client at client time 14.5
.. but
15 arrives to client at client time 14.9 .. so it arrives earlier than
the presentation time! (15>14.9)
16 arrives to client at client time 15.5
and again, as one would expect
17 arrives to client at time 17.1
etc.
Trying to synchronize such presentation times with respect to system
time (when visualizing the stream) is impossible.
But maybe I am not supposed to look at the timestamps, just decode and
present the frames on the screen as they arrive..
Regards,
Sampsa
>
>
> 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
More information about the live-devel
mailing list