Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
29th June 2009, 17:01 | #1 | Link |
Registered User
Join Date: Apr 2009
Posts: 10
|
VOB timestamp reset
I have a VOB file:
http://www.dvdloc8.com/distributorcl...id=15&clipid=2 The present time stamp increases but will reset to zero and start over again near the end of the file. Does anyone know why it works like this? Is this the reason many player could not recognize correctly the play duration of a vob file? How are decoders/demuxers supposed to deal with this? Thanks for any help! |
29th June 2009, 19:32 | #4 | Link | ||
Guest
Join Date: Jan 2002
Posts: 21,901
|
Quote:
Quote:
|
||
30th June 2009, 15:22 | #5 | Link | ||
Registered User
Join Date: Apr 2009
Posts: 10
|
Quote:
Quote:
|
||
30th June 2009, 15:53 | #6 | Link | |
Guest
Join Date: Jan 2002
Posts: 21,901
|
Quote:
Don't forget that the timestamps (SCR, PTS, DTS) are a finite size in bits, so they can wrap back to zero in normal operation. |
|
30th June 2009, 16:08 | #7 | Link | |
Registered User
Join Date: Apr 2009
Posts: 10
|
Quote:
"SCR indicates the intended time of arrival of the byte containing the last bit of the system_clock_reference_base at the input of the program target decoder". So it's not the reference time we are looking for. The wrap back point is about 26 hours and could not be possible in this case. God, why VOB is implemented like this? |
|
30th June 2009, 17:01 | #8 | Link |
Guest
Join Date: Jan 2002
Posts: 21,901
|
SCR is indeed the timebase of the stream for program streams (VOB is a program stream). The equivalent for transport streams is PCR. You can use the Log Timestamps function of DGIndex to see that the SCR resets along with the PTS.
A decoder should align a local clock with the stream's SCR. Then, an access unit is displayed when it's PTS (possibly interpolated) matches the local clock. My point about the wrap-around is that it *can* occur. Also, in broadcast environments, the timebase and associated timestamps can all shift when a new stream is sent (e.g., new program, cut to commercial, etc.) This is called a discontinuity and decoders must not be designed to assume that there are no discontinuities. Using the starting and ending PTS to determine a stream duration is a heuristic that is foiled by any discontinuities. |
30th June 2009, 17:18 | #9 | Link | |
Registered User
Join Date: Apr 2009
Posts: 10
|
Quote:
So in the case of discontinuities, the calculation of present and decoding time of frames, as well as that of the total duration, should take into account the differences of the SCR. But in a software implementation, how to calibrate the decoder time clock? using the mux rate and byte counts? I need to dig into the spec again... |
|
Tags |
timestamp, vob |
Thread Tools | Search this Thread |
Display Modes | |
|
|