Hi. I've been a registered user of Womble MPEG editor for some time.
For a very long time, the time code display appears different than in versions long ago.
Long ago, I could trust that the last frame number displayed would
the number of frames present in the file or current edited project. There were always
30 frames per second. But the differences now are that sometimes a frame number gets
repeated or is missing, and there are sometimes semi-colons between some numbers instead of
colons. I have searched everywhere in the documentation (pdf file) but can't find anywhere
an explanation of what these semi-colons mean and how their meaning differs from a regular colon.
I've now just run into a very severe example. I started out with an MPEG-2 file captured and
encoded by a hardware encoder. I edited it with Womble editor. When I open the newly created
file and go to the last frame, it says "0:36:21;15". (There is a semi-colon before the "15".)
Then I feed this MPEG-2 file into a freeware program to convert all the frames to a AVI file.
Then I encode to MPEG-2 again via another software. If I open the encoded MPEG-2 file in Womble
editor, the last frame reads "0:36:19:08", and no semi-colon is involved. At first this made me
think that some frames were lost along the way, but when I load both files into 2 respective
instances of my MPEG2AVI software, they *each* show a frame count of 65379 (which is 0:36:21.479).
And I also spot-checked to ensure that there's a one-to-one correspondence between all the
respective frames. That is, frame # X in one file exists as frame # X in the other file,
not X-1 or X+1; i.e., no dropped or duplicated frames. So I guess my questions are two-fold:
1. Why do the two program streams show two different final time codes, even though they are
the same length; 2. What do those semi-colons mean?? (And why do some streams not show them?)
(Again, I cannot find any documentation as to what those semi-colons mean, nor why the
frame-count sometimes does not advance when moving from frame to frame as sometimes happens.)
The different time code display with or without the semi-column
can be explained with some reading about the SMPTE time code,
which are also known as "drop frame" and "non drop frame" time code.
I did a search on goole.com for "SMPTE time code", and found
the two articles quoted below, which explain this succinctly.
(1) About SMPTE time code.
Time code, sometimes known as SMPTE time code or SMPTE code,
is an electronic signal which is used to identify a precise location on
time-based media such as audio or video tape or in digital systems.
(SMPTE refers to the Society of Motion Picture and Television Engineers.)
Essentially a string of 80 pulses or bits, containing information pertaining to
the hour, minute, second and frame, the type of time code (non drop or drop frame)
and 32 user-definable bits.
Time code was developed in the early sixties to provide a kind of "virtual sprocket"
for videotape. It is used extensively as a synchronization signal or reference
throughout audio and video production and post production.
In analog media time code usually takes the form of an audio signal which is recorded on one
of the tracks of the tape. Referred to as LTC or longitudinal time code, this signal comes in
several different formats relating to the number of frames per second and, in the case of
color video (29.97 f/s), whether it is "non-drop" or "drop" frame. In video production, the
time code may be recorded as part of the video signal (in an unused line which is part of the
vertical interval). Called VITC ("vitsee" or Vertical Interval Time Code) it has the advantage
of being readable when the playback video deck is paused: since LTC is an audio signal, it is
silent if the tape is not moving.
Time code systems generally have a single Master or time code source with all of the other
devices referred to as "slaves.
These slaves either:
(a) read the time code recorded on their tracks and adjust playback speed to keep locked to
the master (continuous resynchronization) or (b) read the time code and start playing when a
specified time is reached (trigger sync).
In either case, the slave is usually connected to (or has built in) a synchronizer.
This device reads the incoming code and compares it to the code written on the
tracks. The synchronizer searches for the correct spot (with fast forward or rewind) and then
plays with variable speed until the slave code equals the master code. This is the moment
when the two have "locked" and there is usually some visual indication of this status on the
slave or synchronizer. Synchronizers allow the user to program an arbitrary "offset" into the
system so that the slave code need not bear any resemblance to the master code: for example
you might want the slave to sync its location 01:20:39:15 to the
master's 01:22:39:15, etc.
It is important to note that most systems will not tolerate differences in time code type: always
insure that all tapes are "striped" or recorded with exactly the same frame rate and non drop or
The act of recording or poor tape quality , etc. may degrade the time code signal and make it
difficult for the synchronizer to differentiate pulses.
A time code refresher is sometimes used to amplify and alter the on/off slope of the pulses to
reduce the amount of errors. If the code disappears entirely the slave will stop unless the
system provides for "jam sync". Jam sync refers to the synchronizer's ability to take over
generating code when the source stops. Of course the accuracy of the synchronization is in
jeopardy because the new source is "freewheeling" or independent of the actual code
recorded - however if the drop out is for short period, jam syncing will work.
The master time code should be a stable signal. In professional studios there is usually a
"house sync" or master time code available to all synchronization systems. In addition to the
hour/minute/second/frame information, it also contains a steady signal referred to as video
black which serves as a time base for all of the devices: thus the video signal synchronizes
and the time code locates. Computers (usually functioning as sequencers or Digital Audio
Workstations) can synchronize to time code although most will only read or generate MIDI
time code. Therefore a card or external device is needed to (a) read MIDI and (b) convert
SMPTE to MIDI and vice versa.
(2) About time code Drop Frame
Color video was slowly introduced into broadcast.
It was therefore necessary to make it compatible with black and white receivers and design
color receivers or televisions to be able to receive black and white programming as well.
In order to accommodate the extra information needed for color the black and white 30
frame/second rate was slowed to 29.97 f/s for color.
Although usually not an issue for non-broadcast applications, in broadcast, the small
difference between real time (or the wall clock) and the time registered on the video can be
problematic. Over a period of 1 hour (SMPTE) the video will be 3.6 seconds or 108 extra
frames longer in relation to the wall clock. To overcome this discrepancy drop frame is used.
Drop frame: Every frame :00 and :01 are dropped except for minutes with 0's (00:, 10:, 20:,
30:, 40: and 50:).
Other FAQ (Frequently Asked Questions)