Time Syntax

[This is preliminary documentation and subject to change.] 

To specify time in event statements, you can follow several different formats, including seconds (and decimal fractions thereof), SMPTE (Society of Motion Picture and Television Engineers) time, and calculated expressions.

The following statements all produce the same results:

00:01:20:00 segment2.htm;

80 segment2.htm;

80.0 segment2.htm;

actI = 00:01:00:00;
actI + 20 segment2.htm;

Each of these statements causes the file Segment2.htm to begin transmission at one minute and twenty seconds into the program. The first version uses absolute SMPTE time. The second and third versions use seconds. In the fourth example, the first statement defines a constant called actI, which specifies the beginning of Act I in the show. Then the next line of code uses the addition operator + to add a 20-second offset to this time.

SMPTE Time

The Stream Compiler recognizes time expressed in SMPTE format. SMPTE time is a standard representation of time developed for the video and film industries.

SMPTE time is an absolute time format expressed in hours, minutes, seconds, and frames. Standard SMPTE division types are 24, 25, and 30 frames per second (FPS). Valid SMPTE time codes are 00:00:00:00 through 23:59:59:29 for the NTSC (National Television Standards Committee) non-drop frame standard, which has a frame rate of 29.97 frames per second.

The Stream Compiler supports three forms of SMPTE time:

SMPTE time format Format Example
30 frames per second hh:mm:ss:ff 01:00:30:15
drop frame (29.97 frames per second) hh:mm:ss;ff 01:00:30;15
fractional seconds hh:mm:ss.dd 01:00:30.5

The distinction is made by the punctuation character following the seconds. A colon indicates that the last pair of digits represent a frame (from 0 to 29), where frames are displayed at the rate of 30 per second. A semicolon indicates that the last pair of digits represent a frame (from 0 to 29), in drop-frame format. A period indicates that the final two digits represent a decimal fraction of a second (for example, .5 = 15 frames, or about half a second).

All representations of time that are expressed in hours, minutes and seconds (as opposed to seconds only) require the use of a colon separator, and must include digit(s) for the frame. "00:1" indicates one frame.

The Stream Compiler also accepts time expressed in whole or decimal seconds, which is not valid SMPTE. For example, both 342.0 and 342 mean exactly 00:05:42:00.

The built-in variable FPS enables you to set the frame rate.

Specifying Absolute Time

To express an absolute time in the form of "time-from-now," type the "+" symbol before the time expression. For example, both of the following expressions refer to the point in time one minute from now:

+60
+00:01:00:00