[vlc] How does VLC determine stream time for MPEG4 streams?

Tomer Margalit tomer.margalit at videocells.com
Mon Oct 24 16:10:33 CEST 2011


Hi,

I'm currently working on integrating an old (highly customized) video server
that my company has.
The old player was a custom built player as well, and the player and server
were pretty much built one around the other.
Now trying to integrate it with VLC, I see a lot of problems (particularly
after a seek - since at that point everything seems to go out of sync).

Sometimes (not always), after a seek the movie freezes - and when we use
VLCJ to play it, the time change callback shows the time is not changing
(but new packets are received).
I have checked the rtp timestamps and have tried altering them many times,
but nothing seems to work (actually the times in the callback are
unaffected) - which implies the problem lies within the mpeg packets (pts?).

I have looked at the times of the mpeg4 packets being released from the
server (as an FFmpeg AVPacket) - pts, coded_picture_number,
display_picture_number. The things I have noticed are that:
1) pts cycles through the values 2-29 (in increments of 3) and repeats.
2) decoded_picture_number is incremented by 1 each packet
3) display_picture_number is a constant 0

I have two questions:
1) Does anyone know what the problem could be, or why the values are
problematic for VLC?
2) What value does VLC use to determine the movie time? pts,
decoded_picture_number, display_picture_number? A combination of the values?
Some other values?

Thanks,
  Tomer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc/attachments/20111024/ccf9305b/attachment.html>


More information about the vlc mailing list