To achieve frame accurate output at a certain time, Viz Engine utilizes a time code reader board and special commands. Viz Engine records certain commands and executes them at the exact time that the time code reader board hits the timestamp.
This section contains the following information:
Note: Viz Engine can only guarantee a frame accurate output, not a field accurate output.
Time Code Related Commands
Time Code | Description |
---|---|
| Gives you all available time codes in the system. The return is a list of indexes and strings. Every time code source is identified by a unique index. |
| Gives all time codes which have been updated in the last two fields. |
| Returns the time code for the index. |
| Returns the current used timecode by index |
| Sets the timecode source by index. |
| Queues a Command for execution on a specific time. <index>: Index of the timecode. Example: Activates scene <9D1F7526-CFEF-C844-848279FE076E9104> at exactly 12:07:10:00. |
| Clears all queued commands for the time code source with index <index>. |
| Defines a time frame after which a command is removed when it has not been executed. The threshold needs to be defined as Example: |
| Defines a time frame until when a command has to be executed (even if the given timecode has already passed). The threshold needs to be defined as |
| Defines a time frame into the future during which command are allowed to be executed when inserted. The threshold needs to be defined as Example: |
Prerequisites
The following prerequisites are required:
The system must be equipped with a Plura TC Reader board. This needs to be enabled in the Viz Config File by setting
TCReaderUsage = 2
.The correct TC source must be set by using TCReaderSource. Viz Engine supports LTC, VITC, ATC_LTC, ATC_VITC, HANC_LTC, HANC_VITC. To specify multiple sources the format would be:
TCReaderSource = LTC | VITC
.Commands need to be sent with a timecode.
For example:TC*TC_COMMAND SET_TC 1 12:00:00:00 -1 RENDERER*MAIN_LAYER SET_OBJECT SCENE*<9968FF26-35B0-4C01-AE5A4F8D11D1543B>
. This ensures that the mentioned scene is shown on the output exactly at 12:00:00:00.The Output delay should be set to a certain number of frames to prevent any frame drops (for example, to initialize clip codec, etc.).
Note: To verify this, make sure the final output device (Recorder, Monitor) can display the same timecode as attached to the Viz Engine.
Configuration
To configure correct field accurate timeout, a few parameters need to be set. Three important values are responsible for the proper playout of Graphics, DVE Live sources and DVE Clips:
Timed Command Bias
Command: TC*TC_BIAS SET n (in fields)
Config Setting: delayed_command_bias = n
This represents the overall delay in fields, the commands are sent if the time code hits the timestamp. For instance, if your output appear two frames too late, you need to use delayed_command_bias= -2
.
Note: The Command TC*TC_BIAS SET n
immediately takes effect for all TC commands sent after this one, without restarting Viz Engine.
The correct sequence to bring a scene On Air exactly at 12:00:00:00 with clips prepared would then be:
SCENE*<uuid> LOAD
SCENE*<uuid> CUE
TC*TC_COMMAND SET_TC
1
12
:
00
:
00
:
00
-
1
RENDERER*MAIN_LAYER SET_OBJECT SCENE*<uuid>
TC*TC_COMMAND SET_TC
1
12
:
00
:
00
:
00
-
1
RENDERER*STAGE START