Grass Valley USA, LLC and its Grass Valley Affiliates
Headquarters:
400 Providence Mine Road
Nevada City, CA 95945
United States
15655 SW Greystone Ct.
Beaverton, OR 97006
United States
Brunnenweg 9
D-64331 Weiterstadt
Germany
Kapittelweg 10
4827 HG Breda
The Nederlands
2300 So. Decker Lake Blvd.
Salt Lake City, UT 84119
United States
Including its implementation, meets the requirements of the standard:
ISO 9001:2008
Scope:
The design, manufacture and support of video and audio hardware and software products and related
systems.
This Certificate is valid until: June 14, 2012
This Certificate is valid as of: December 23, 2010
Certified for the first time: June 14, 2000
H. Pierre Sallé
President
KEMA-Registered Quality
The method of operation for quality certification is defined in the KEMA General Terms And Conditions For
Quality And Environmental Management Systems Certifications. Integral publication of this certificate is allowed.
KEMA-Registered Quality, Inc.
4377 County Line Road
Chalfont, PA 18914
Ph: (215)997-4519
Fax: (215)997-3809
CRT 001 042108
ccredited By:
ANAB
A
Switcher Products
Protocols Manual
Software Version
071806308
JUNE 2011
Contacting Grass Valley
International
Support Centers
Local Support
Centers
(available
during normal
business hours)
France
24 x 7
Australia and New Zealand: +61 1300 721 495Central/South America: +55 11 5509 3443
Middle East: +971 4 299 64 40 Near East and Africa: +800 8080 2020 or +33 1 48 25 20 20
Europe
+800 8080 2020 or +33 1 48 25 20 20
Hong Kong, Taiwan, Korea, Macau: +852 2531 3058 Indian Subcontinent: +91 22 24933476
This section describes the tally mechanisms available on the Kalypso and
Kayenne Video Production Center and the Zodiak Digital Production
Switcher systems. These systems (generically called “switcher”) are each
equipped with a classic tally relay system, but also have a serial tally inter
face to provide more in-depth status than simple on/off air information.
Technical details of the serial tally protocol used to report tally information
are presented later in this section.
Section 1
-
Kalypso System Overview
A Kalypso system provides 64 tally relays that close in response to tally statuses, and an additional 64 relays may be added as an option. The tally
serial port also outputs current system tally information.
Kalypso systems are available in 4-ME and 2-ME models. The MEs are
identical to one another, with one acting as a PGM
four keyers, two background buses, two utility buses, two preview out
puts, and four program outputs.
A Kalypso system has 46 programmable system outputs (Outputs 39 and
40 are not programmable). An aux bus output can be configured as a
video/key pair.
The Kalypso Still Store option has two inputs and eight outputs.
Zodiak System Overview
A Zodiak system provides 32 tally relays. The tally serial port also outputs
current system tally information.
Zodiak systems are available in a 3-ME model (three fully functional MEs,
one acting as PGM
ME has four keyers, two background buses, one utility bus, one preview
output, and one program output. The PGM
PST bank. Each ME has
-
PST) and a 2.5-ME model (2 MEs and PGM PST). Each
PST-DSK bank is equipped
Switcher Products — Protocols Manual9
Section 1 — Tally Protocol
Kayenne System Overview
with three downstream keyers (on the 3-ME model an additional four ME
keyers are available, making a total of seven), and has two program and
two preview outputs.
Many of the Zodiak system’s 26 outputs are dedicated, and 13 aux buses
are available. Zodiak system output pairing is different from that on
Kalypso systems.
The Zodiak Still Store has two inputs and four outputs.
A Kayenne system provides 24 tallies relays per installed ME board.
Smaller 4-RU Kayenne frames support up to 48 relay tallies. Larger 8-RU
Kayenne frames support up to 96 relay tallies.
Kayenne systems have a modular design available in different configurations, ranging in size from 1.5ME to 4.5MEs. From a protocol perspective, a
Kayenne can have up to 5MEs (which includes the ME50). Kayenne
systems have 6 keyers per ME.
Kayenne systems also support an Image Store capable of 6 input and
output channels, and a floating eDPM effects system.
Kayenne Source IDs are in the range of 1-146 (Kalypso was limited to 128).
The message sync algorithm employed is different from Kalypso because
source IDs can have values greater than 128. The size of the contribution
tally is 303 bytes (Kalypso was 223 bytes).
Tally Background Information
This subsection describes what a switcher does in terms of tally calculations, and may be useful for persons designing a tally computer that uses
serial tally information.
The tally system of a production switcher provides status to devices and
their operators. The most basic status is whether or not the device is on air,
but other statuses can also be provided by the tally system. For example,
the Kalypso system has four program outputs on its PGM
tally system is not affected when one of the additional outputs is simply a
“clean feed” version of the main program output. However, customized
feeds which depart from the program output are possible. These custom
ized outputs may include sources which are not present on the main
program output. For example, the switcher may automatically substitute a
“private” camera for a wide shot. The tally system provides ways to prop
erly tally these special situations.
PST bank. The
-
-
10Switcher Products — Protocols Manual
Tally Types
Output Tally
Tally Background Information
Tally requirements can go beyond simple on/off air indication for each
source. This section describes the types of tally information which can be
provided via the switcher tally relays or the serial protocol.
The switcher performs five tally calculations: on-air tally, plus four other
customer specified calculations. Each calculation may be customized by
selecting the tally type and which buses contribute to the tally.
There are three basic types of tally calculations and two specific derivatives
for the “output tally” type.
Output tally indicates which sources contribute to a specific output or
group of outputs (maximum of four outputs). On-air and look-ahead tally
are specific cases of output tally.
Output tally needs a starting point for tally calculations. The customer can
select one or more outputs which will be included in the tally calculation.
Any sources which appear on those outputs will be tallied.
On-air Tally
On-air tally indicates whether a source is on or off air. This information is
most often used to provide camera tally so the camera operator and the
talent know when the camera is included on the program output(s) of the
production switcher. It is a special case of output tally. It is provided as a
separate type to ease tally configuration.
The switcher has more than one output which may be on air (e.g., all four
program outputs of the PGM
tions). On air tally includes sources which contribute to any of these outputs. On-air tally had no configuration. It tallies any source which
contributes to any of the four PGM
Look-ahead Tally
Look-ahead tally is similar to On-air tally but is based on the selection
made on the switcher’s main PRESET bus. It is intended to indicate which
sources will be on air if a program-preset transition is performed. Lookahead tally is also a special case of output tally. It is provided as a separate
type to ease tally configuration. Look-ahead tally has no configuration. It
tallies any source which contributes to the look-ahead state for any of the
four program outputs of the PGM
PST bank may have different source contribu-
PST program outputs.
PST bank.
Switcher Products — Protocols Manual11
Section 1 — Tally Protocol
Iso Tally
Selection Tally
Iso tally indicates which sources contribute to a specific point in the
switcher video path whether or not those sources contribute to the program
output. For example, an ME iso tally indicates what sources contribute to
one or more of an ME’s program outputs. Iso tally is similar to output tally
except that the tally calculation is specified in terms of the ME outputs not
on physical outputs of the switcher. In fact, the ME outputs do not have to
be mapped to physical outputs in order to generate ME Iso tally.
Selection tally indicates what source is selected on a particular bus or buses.
Selection tally does not follow reentries or factor in bus visibility. The buses
need not be on air for the sources to contribute to this information.
Selection tally requires specifying which buses of the switcher should be
included in the tally calculation.
Tally Calculation Basics
Tally status provides information about switcher sources based on the
video composite at some point in the video path. This section describes the
mechanisms used within the switcher to calculate tally relay closures. The
information is also useful when interpreting the “contribution tally” data
described later.
Many sources may be combined at each ME of the switcher and ME banks
can be reentered. In order to calculate tally status, the video and key paths
must be traced backwards from the video output through all MEs, keyers
and external processing equipment (e.g., a DVE) to the primary sources.
At each stage in the video path, tally calculations must take into consideration whether or not a particular bus contributes to the composite and what
source is selected on the bus. If the selection is a primary source, the end of
that branch has been found. However, if the selection is a reentry (either
another ME or internal (e.g., frame store) or external processing (DVE), the
trace must continue in order to find sources which contribute to that pro
cessing block’s output.
Calculations must include both video and key paths through the switcher.
-
Keyer Modifications
Keyers modify the video and key signals and affect tally calculations.
The keyer can either use the incoming video or replace it with a matte. In
addition, the key signal can be derived either from the incoming video,
12Switcher Products — Protocols Manual
incoming key signal or a wipe pattern generator. The video input contributes to the key if it is used as either the fill or as the key source. The key
input contributes to the key if it is used as the key source.
An opacity setting of 0% negates all contributions of the keyer.
The processed cut signal or the masking signals may also change video contribution. If the result of key processing produces a completely transparent
(i.e., cut signal is 0 for the entire raster), the video signal is not contributing
to the key output. This calculation is normally not considered since it
requires real time sampling of the cut signal and existing key processor
ASICs do not include the calculations.
All of these factors are combined into a single flag within the contribution
tally packet.
Transition Mixer Modifications
The transition mixers modify the contribution of all inputs to an ME bank.
If the mixer makes an input transparent, there is no contribution to the
mixer output for that input.
Tally System
Internal and External Processing Loops
Tally System
Separate contribution flags are provided for each path into a mixer. Each
mixer (the Kalypso system has four per ME, for example) has its own set of
contribution flags in the contribution tally packet.
Images processed by DVEs, frame stores or other devices must also receive
accurate tally. Since these devices have the ability to make their incoming
video invisible, their current state must be included in the switcher tally
calculations. For example, if the DVE positions an image completely off
screen or the frame store is frozen, the on-air tally for that source should go
away (assuming it isn’t on air via some other path).
There are many inputs, outputs and paths through a production switcher.
The tally system must be capable of determining which sources contribute
to a specified output regardless of contributions to other outputs. In
essence, there may be multiple tally paths through the switcher just as there
are multiple video paths. It is essential to maintain tally independence back
though each video processing path of the switcher and external gear (e.g.,
DVE).
Switcher Products — Protocols Manual13
Section 1 — Tally Protocol
Names
For this reason, each device which processes video must build a “contribution map” which indicates which of its inputs are visible on or contributes
to each output. Because the video path through the switcher is known, the
tally system can then trace each output back through all paths and find all
contributing sources. The set of contributing sources for each output is
likely to be different, but can be tallied independently.
With this mechanism, most tally modes are a degenerate case of Output
Tally. On-air tally is Output Tally for the PGM
ahead tally is Output Tally for the PGM
If more than one program output exists, for example, the four programmable clean feed outputs of the PGM PST bank, contributions can be combined after tracing each path from output back to all inputs.
All tally information is number based to keep messages short and minimize
communication time. Source names are provided through a separate mech
anism because they change less frequently and require a higher bandwidth
to transfer.
PST Preview output.
PST Program output. Look-
-
Source names name the source IDs including reentries.
Tally Relay Outputs
The Kalypso system provides 64 tally outputs as part of the standard
system. A second card can be added for a total of 128 tally relays within the
frame. The Zodiak system has 32 tally relays with no additional cards avail
able.
On a Kalypso or Zodiak system, tally relays can be configured for different
tally calculations in groups of 32. For example, on a Kalypso system one
group can provide on-air tally while another group can provide bus iso
tally. Each tally relay within the group can be associated with one of the 128
sources. In the previous example, on-air tally can be set up for any 32 of the
128 Kalypso sources using the first group. The second group could provide
bus iso tally for the same set of 32 sources or a completely different set. In
many situations, 32 on-air closures will be sufficient. When this is not the
case, additional groups can also be configured for on-air tally calculations
and mapped to different sources. By using all four tally groups for on-air
tally, all 128 Kalypso sources can be tallied.
NoteAt the time of publication, switcher tally relays were hard-coded to corre-
-
spond one-to-one to system sources. The tally relay for any source visible on
any of the outputs of the PGM PST bank will close. Programmable tally
relays, as referenced here, are under development. Check the documentation
of your current switcher software version to determine what tally relay programming capabilities are available.
14Switcher Products — Protocols Manual
Serial Tally
Serial Tally
The switcher provides a serial tally interface that provides the necessary
information to trace any tally path within the switcher.
The serial protocol is based on RS-422 asynchronous serial communications
at 76.8 kb, 8 data bits, 1 stop bit, and no parity as a default. Other baud rates
(9600, 19,200, 38,400, 57,600, and 115,200) and odd or even parity selections
can be selected for contribution tally but the lower rates reduce throughput
and hence latency in reporting tally. 76.8 kb/field with no parity yields
about 128 characters per field and was assumed for all transmission times
unless otherwise noted. At 9600 baud and even or odd parity, the link only
supports 14 characters per field, making the link virtually useless for real
time tally (contribution tally would require 16 fields to transmit). See
Ta bl e 10 on page 26 for specific timing information.
The serial tally interface uses binary protocols with easily identifiable
message boundaries. All communication is from the switcher frame to the
external device. Multiple listeners can be connected to this port. External
devices should not transmit information on either pair of the link. The
switcher does not listen to this port, it only speaks.
The contribution tally information is currently output to port 5 on the
Kalypso system, and port 2 on the Zodiak system. The ability to configure
switcher serial ports for different purposes is currently under develop
ment.
Changing Tally Port Serial Settings
At the time of publication, the switcher does not have a menu to change
serial port settings. The contribution tally baud rate can be changed by
editing the text file "mfPorts.cfg" located in the root of the frame's hard
disk. The file can be FTPed to a workstation, edited with any text editor and
FTPed back. The frame can then be reset to activate the new baud rate. If
the file is not recognized during frame boot up, a default will be created
replacing an existing one. The default uses 76.8 Kb.
The following sample indicates what the file should look like for 115.2 Kb
on a Kalypso system.
PORT5: identifies which port will be affected by the remaining information
on the line. Currently only the tally contribution port (port 5 on Kalypso,
port 2 on Zodiak) can be set using this mechanism.
-
Respectively, the remaining comma separated information is:
Baud Rate: 9600, 19200, 38400, 57600, 76800 or 115200
Parity: N for none, O for odd or E
Switcher Products — Protocols Manual15
Section 1 — Tally Protocol
Number of Data Bits: must be 8
Number of Stop Bits: 1 (typical) or 2.
The semicolon indicates a comment separator causing the rest of the line to
be ignored by the parser.
Kalypso & Zodiak Contribution Tally Protocol
Contribution tally makes it possible to determine which sources and processing blocks (an ME or DVE) contribute to the image at any point in the
video path. On-air tally, for example identifies which sources contribute in
some way to the main program output of the switcher. ME 2 iso tally starts
at ME 2’s main program output.
Refer to Tally Calculation Basics on page 12 and Tally System on page 13 for
more details.
Contribution tally consists of approximately 220 bytes of information.
Because bandwidth is limited to approximately 128 bytes per field at
kb, this information is broken into smaller messages. This allows
76.8
sending changes at a higher priority than unchanging information. Even
with prioritized updates, there is no guarantee that all changes will be com
municated within one field. See Tab le 10 on page 26 for specific timing
information.
-
Contribution messages indicate which sources are selected on buses
feeding the processing block (or output) and which of those inputs con
tribute to a processing block’s output. In the cases where a processing block
has several outputs, a separate contribution map is included for each
output. Contribution tally for external processing blocks such as a DVE also
lists the source IDs for this block’s output(s) so that reentry paths through
external devices can be identified and followed.
Contribution message codes start at 0x8 with an instance ID grater than or
equal to one. This insures that command character value is always above
128 so it is recognized as a command code. Command codes 0xE and 0xF
are not used but are reserved.
Contribution information for each processing block is sent as a separate
message. Information for switcher outputs is sent in six messages of eight
outputs each. All portions of the system are included in the contribution
dump even if they are inactive. Inactive blocks will contain data which
indicates inactive status for all inputs to the processing block. In addition,
that block’s outputs will never appear as selections on any bus of the
switcher.
-
16Switcher Products — Protocols Manual
Source IDs
Kalypso & Zodiak Contribution Tally Protocol
Valid source IDs used in this protocol range from 1-128. Source IDs in the
range of 93 - 128 originate within the switcher and never change. On
Kalypso systems, source IDs in the range of 1 - 92 represent external
sources, including any external processing blocks. Zodiak systems have the
same range of external source IDs, but have fewer external physical inputs.
A source value of 0 indicates the input or bus is not in use, or to indicate
that an external DVE is being used in an effects send loop. In this case, the
DVE’s contribution information is included in the ME’s contribution infor
mation and additional tally calculations are not necessary. No further tally
can be calculated for source IDs of zero, and it should not be counted as a
primary input.
Tally is source based. Which physical inputs are used is not factored into
tally information.
Ta bl e 1 summarizes source IDs for ME reentries and internal sources. Note
that some sources are not available on some switcher models.
-
Tab l e 1 . S o ur c e I D s
Source IDReentrySource IDReentry
93ME 1 PGM A94
a
95
97ME 1 PVW A98
99
101
103
105
107
109
111Pgm-Pst PGM A112Pgm-Pst PGM B
113
115Pgm-Pst PVW A116Pgm-Pst PVW 2
117
119Background 1120Background 2
121Still Store 1122Still Store 2
123Still Store 3124Still Store 4
125
127
a
Zodiak Systems do not have these sources.
b
2-ME Kalypso Systems do not have these sources.
c
2.5-ME Zodiak Systems do not have these sources.
ME 1 PGM C96
b
ME 2 PGM A100a
a b
ME 2 PGM C102a
b
ME 2 PVW A104a
b c
ME 3 PGM A106a
a b
ME 3 PGM C108a
b c
ME 3 PVW A110a
a
Pgm-Pst PGM C114
a
Test Signal118Black
a
Still Store 5126
a
Still Store 7128
a
a
a
b
b
b
b
b
b
a
a
a
ME 1 PGM B
ME 1 PGM D
ME 1 PVW 2
ME 2 PGM B
ME 2 PGM D
ME 2 PVW 2
ME 3 PGM B
ME 3 PGM D
ME 3 PVW 2
Pgm-Pst PGM D
Still Store 6
Still Store 8
Switcher Products — Protocols Manual17
Section 1 — Tally Protocol
ME Contribution Information
Kalypso systems have up to 4 MEs. Each ME has 12 input buses (4 video/
key pairs, 2 backgrounds and 2 utility buses), 4 program outputs (PGM A
– PGM D) and two preview outputs. PVW A is always associated with
PGM A. PVW 2 is selectable as the preview for PGM B, C or D. Preview
output contribution depends on the preview mode selected and active
keyer “hold to previews” or “show keys”. Contribution information is pro
vided for all six real outputs and for the look-ahead state of the four
program outputs. “LAP” contribution always indicates what the program
contribution information would be following a main transition.
Zodiak system MEs have only one utility bus, and only one program and
one preview output. Contribution information for these will be generated,
but none will be generated for utility 2 which is not present. Contribution
information for missing inputs and outputs will always be false.
On a Zodiak 2.5-ME system, PGM PST-DSK has three downstream keyers
and no utility buses, and two program and two preview outputs. Zodiak
PGM
PST-DSK is reported as Pgm-Pst. It will only report keys 1-3 as contributing to the composite, and only show PGM A and B outputs active. ME
3 is not active.
-
On a Zodiak 3-ME system, PGM PST feeds the downstream keyer and is
reported as ME 3. The DSK is reported as Pgm-Pst, and has three down
stream keyers, no utility buses, and no B bus. The DSK has two program
and two preview outputs.
The Keyer buses “in use” flags indicate whether or not the cut and fill
would be visible if the keyer was contributing to an output. The Contribu
tion flags indicate whether or not the keyer contributes to the output. These
flags need to be combined (ANDed) to determine if a keyer cut or fill bus is
actually contributing to the output. This was done to limit size of the
message without eliminating information.
The source information indicates which source is feeding the ME inputs.
These may be primary sources or reentries. Sources and in use flags apply
to all outputs from an ME, but contribution information may be different
for each output. Refer to
Ta bl e 2 on page 19.
-
-
18Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
Table 2. ME Contribution
b7b6b5b4b3b2b1b0Notes
ME Contribution (0x8)ME IDME IDs
Key 1 Fill Source (1 – 128)
Key 4
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM A Contribution9399105111
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM B Contribution94100106112
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM C Contribution95101107113
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM D Contribution96102108114
Key 4Key 3Key 2Key 1Util 2Util 1BALAP A Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BALAP B Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BALAP C Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BALAP D Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BAPVW A Contribution97103109115
External video processing blocks such as DVEs must be included for accurate tally calculations. This protocol supports up to two external processing
blocks, each with up to four input pairs and six outputs.
External processing blocks use primary inputs for reentry paths. The
output source IDs identify these paths. These source IDs should be treated
just like an ME reentry. Output contribution maps and reentry source IDs
are provided for the 6 outputs.
Switcher Products — Protocols Manual19
Section 1 — Tally Protocol
The input mode flags indicate whether the B side of an input pair is an independent video signal or linked to the A side as the input’s key. Refer to
Ta bl e 3.
Table 3. External Processing Contribution
b7b6b5b4b3b2b1b0Notes
External Proc Contribution (0x9)Ext Proc IDExt Proc ID
The Kalypso internal still store has 8 outputs. Outputs can be configured in
pairs as two independent outputs or as a video-key pair. The Output Mode
flags identify the configuration for each output pair.
The Zodiak internal still store has only four outputs, so still store contribution information will only be valid for outputs 1-4. Contribution information for outputs 5-8 will always be false.
20Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
The Kalypso and Zodiak internal still store has two inputs. They can be
configured as two independent video inputs or as a video-key pair. The
Input Mode flag indicates which mode the inputs are operating in.
The Record flags indicate whether or not the input is in use. If an input is
grabbing a frame or recording an animation, the bit will be 1. An active
record flag is essentially a beginning point for tally regardless of still store
output usage since the indicated source is being recorded on the still store’s
hard disk. Refer to
Table 4. Still Store Contribution
b7b6b5b4b3b2b1b0Notes
Still Store Contribution (0xA)1
Still Store Contribution (0xA)1
Output
0
7/8
Mode
Tab le 4.
Input 1 Source (1 – 128)
Input 2 Source (1 – 128)
Output
Mode
5/6
Output
3/4
Mode
Output
1/2
Mode
Input
Mode
Input 2
Rec
Input 1
Rec
Only one instance of Still
Store contribution
Mode
0 – Video-video
1 – Video-key
Output Contribution Information
Kalypso Systems
Kalypso has 46 programmable outputs (Outputs 39 and 40 are dedicated to
Black and Test and report these source IDs). An output can be programmed
as either an aux bus or as a dedicated output for an ME, etc. From a tally
standpoint, the only difference is what source is selected on the output. A
dedicated output won’t change sources while an aux bus might. That is, the
tally protocol won’t indicate what the output is being used for (dedicated
output or aux bus) and the receiver of the information shouldn’t care. It
may be necessary to identify which physical outputs are starting points for
tally calculations.
Output status is communicated in 6 messages of 8 outputs each. For
example, status for output 10 would be sent as output 2 in the second block.
The on-air flags indicate whether or not the switcher considers the output
to be on air. This information can be hard coded, or may be based on status
from some external device. For example, the Pgm-Pst PGM A output is the
main program output and is normally assumed to be on air. The feed to an
iso recorder may utilize a GPI input (running status via the switcher-VTR
control interface) so that output is on air only when the VTR is in record.
Tally calculations may choose to ignore these flags.
Outputs used as aux buses may be paired in order to deliver a video-key
pair to an external device. The Output Mode flags indicate whether the two
Switcher Products — Protocols Manual21
Section 1 — Tally Protocol
buses of a pair are independent (video-video) outputs or are being used as
a video-key pair. Refer to
Table 5. Output Contribution
b7b6b5b4b3b2b1b0Notes
Outputs Status (0xB)Block ID
Outputs Status (0xB)Block ID
Output 1 Source (1 – 128)
0000Out 7/8Out 5/6Out 3/4Out 1/2
Output 2 Source (1 – 128)
Out 8Out 7Out 6Out 5Out 4Out 3Out 2Out 1On-air
Output 3 Source (1 – 128)
Output 4 Source (1 – 128)
Output 5 Source (1 – 128)
Output 6 Source (1 – 128)
Output 7 Source (1 – 128)
Output 8 Source (1 – 128)
a
Outputs 39 and 40 are not programmable and are always Black and Test, respectively.
b
Outputs 41 through 48 are the effects send outputs.
Many Zodiak outputs are hard wired to ME outputs. These outputs will not
be reported in tally contribution information. The remaining outputs are
programmable as aux buses (single buses or aux bus pairs). Zodiak output
pairing is different from Kalypso. Note that aux bus numbers may not cor
respond to aux output numbers since this assignment is configurable.
Output messages are organized to put Zodiak's effects send buses on the
same output IDs as used for Kalypso effects send buses. Zodiak aux
outputs 6-13 (Zodiak's effects send outputs) are reported as outputs 41-48
(Kalypso's effects send outputs). Zodiak's switched preview is also
reported as Output 6. (
-
Ta bl e 6).
22Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
Table 6. Zodiak Output Assignments
OutputSignal
1Aux Output 1 (A side if paired with aux output 2)
2Aux Output 2 (B side if paired with aux output 1)
3Aux Output 3 (A side if paired with aux output 4)
4Aux Output 4 (B side if paired with aux output 3)
5Aux Output 5 (can't be paired)
6Switched Preview
7-8unused (reported as source ID 0)
9-40unused, not reported
41Aux Output 6 (effects send - A side if paired with aux output 7)
42Aux Output 7 (effects send - B side if paired with aux output 6)
43Aux Output 8 (effects send - A side if paired with aux output 9)
44Aux Output 9 (effects send - B side if paired with aux output 8)
45Aux Output 10 (effects send - A side if paired with aux output 11)
46Aux Output 11 (effects send - B side if paired with aux output 10)
47Aux Output 12 (effects send - A side if paired with aux output 13)
48Aux Output 13 (effects send - B side if paired with aux output 12)
Source Names
Switcher source names are not really part of tally, but often provide valuable information to devices which utilize switcher tally information. Source
names are limited to twelve characters and each is sent in its own message
along with the source’s ID. Source names are not necessarily unique. That
is, two sources could have the same name.
The switcher supports an optional nickname for each source as well as the
full source name. Nicknames are a shortened version of the full source
name intended for displays with limited space. These are blank if unde
-
fined in which case the full source name should be used.
The switcher supports the notion of aliasing source names, i.e., replacing
generic names for names more specific to the intended usage of the source.
When aliases are activated in suite preferences, the tally system reports
aliases. Otherwise, the contribution tally reports engineering source names.
The name set ID indicates which name set is being reported.
Switcher Products — Protocols Manual23
Section 1 — Tally Protocol
Characters are limited to 7-bit ASCII. Names shorter than 12 characters are
left justified and null (0) filled. The message format is indicated in
Table 7. Source Names
b7b6b5b4b3b2b1b0Notes
Source Name (0xC)Nameset ID
Source Name (0xC)Nameset ID
Source ID (1 – 128)
0Name Character 1Left-most character
0Name Character 2
0Name Character 3
0Name Character 4
0Name Character 5
0Name Character 6
0Name Character 7
0Name Character 8
0Name Character 9
0Name Character 10
0Name Character 11
0Name Character 12Right-most character
0Nickname Character 1Left-most character
0Nickname Character 2
0Nickname Character 3
0Nickname Character 4
0Nickname Character 5
0Nickname Character 6Right-most character
1 – Name & Nickname
Ta bl e 7.
Nameset ID
2 – Alias
24Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
Update
Update messages inform the receiver of critical state changes. Initialize
indicates the start of switcher tally processing (the beginning of life). Data
Consistent indicates that all tally packets are up to date. Since updates for
one change may span several packets, to avoid tallying sources improperly,
tally calculations should only be performed when data is consistent (all
updates have been sent). See
Tab le 8. Refer to Command Codes and Instance
Summary for the use of these messages.
Table 8. Update Messages
b7b6b5b4b3b2b1b0Notes
Update (0xD)Update ID
Update (0xD)Update ID
Command Codes and Instance Summary
Update ID
1 – Initialize
2 – Data Consistent
Refer to Ta bl e 9 for a list of the valid command codes and valid instance IDs
for each command, and message lengths.
Messages start with a message code. Message codes are repeated twice in
order to provide positive identification of the message start. Data bytes
could match a valid message code, however the messages have been laid
out such that no two consecutive data bytes have values above 128. Since
all message code characters are above 128, it is not possible for message
data to duplicate the repeated message code.
When the switcher begins sending tally information, it will issue an Initialize command, then send all tally packets as fast as possible. After all
packets have been sent a Data Consistent message is sent.
During idle times (no changes), one background contribution update will
be sent at the frequency specified in
Ta bl e 10 followed by a Data Consistent
message. All instances of all message codes are always sent regardless of
which portions of the switcher are currently active.
The source name set is sent one name at a time. All 128 source names are
sent in order and the process repeats.
Background contribution updates and the source name messages are
spaced out and interleaved as shown in
Ta bl e 10. Remaining serial band-
width is used for contribution change updates, if any.
When changes occur, many messages may be required to communicate the
change. At the end of the stream of packets, a Data Consistent message will
be sent. The switcher will insure that data is inconsistent for no longer than
indicated in
Source name refresh (sec)13.6536.8273.4132.5601.7071.707
Max data inconsistent time (sec)0.3200.1600.0800.0600.0400.040
Tab le 10.
Field
Rate
60 Hz
Baud Rate
9,60019,20038,40057,60076,800115,200
20105432
26Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
The cycle period is the time (in fields) it takes to send one background contribution update and three source name messages. Remaining time within
a cycle is used to send contribution changes. If no changes need to be sent,
the link goes idle during a cycle.
By design, the cycle period is also the time it takes to send all contribution
messages. This is the maximum time contribution information will be
inconsistent. Data is inconsistent when tally changes occur and more than
one message must be sent to communicate all changes.
Background contribution refresh is the time it takes to completely send all
contribution messages as background updates. This tells the tally system
designer how long it will take for their system to sync up to the switcher
should they connect after the switcher is up and idle.
Source name refresh is the time it takes to send all source name messages.
Switcher Products — Protocols Manual27
Section 1 — Tally Protocol
Message Parsing and Processing
Message code recognition and parsing can use the following algorithm:
repeat forever
currentChar = next byte on input stream
// message header – set up for new message
if (currentChar > 128 && currentChar == lastChar)
messageCode = currentChar >> 4 // message code is 4 MSBs
instance = currentChar & 0xF // instance is 4 LSBs
bytesReceived = 0
if (messageCode == UPDATE)
switch (instance) // instance is really update type
case INITIALIZE:
invalidateAllData ()
dataConsistent = FALSE
break
case DATA_CONSISTENT:
if ( allDataValid ())
dataConsistent = TRUE
processTally ()
break
end switch
// prevent tally processing while receiving tally updates
// but source name updates shouldn’t prevent tally calcs
else if (messageCode < SOURCE_NAME)
dataConsistent = FALSE
// assemble message starting with message code and instance ID
if (messageCode != INVALID)
messageBuffer[bytesReceived++] = currentChar
if (bytesReceived == messageLength (messageCode) + 1)
copyTally (messageBuffer, messageCode, instance)
messageCode = INVALID // end of message
else
// waiting for valid message header - discard char
lastChar = currentChar
end repeat
This routine looks for two consecutive characters greater than 128. The
message type is extracted from the 4 most significant bits of this character.
An instance ID is extracted from the 4 least significant bits of this same
character. Instance IDs indicate specific information for identical objects
(e.g., MEs). The meaning of instance (if any) for a command is indicated in
the command descriptions above.
Each message type has a known message length. messageLength returns
the number of data characters in the message. Message data lengths are
specified in the command descriptions above.
Characters are assembled in a buffer including the message code and
instance ID. When all characters have been received,
to move the completed message out of the message buffer to somewhere it
can contribute to tally calculations.
This algorithm assumes the program keeps track of valid receipt of each
and every contribution tally data block (every instance of all messages). It
is not appropriate to process tally data if all data blocks are not up to date.
When a data block is received, it is marked as valid (possibly by
copyTally). The only thing which invalidates any data block is
invalidateAllData which invalidates all data blocks. This only occurs
on loss of communication or when the switcher sends the Initialize mes
sage.
copyTally is called
-
allDataValid is routine which checks all the data block flags to make
sure all the data is valid. If it is, tally calculations can be performed. If not,
they must wait until all blocks have been received. Since the switcher sends
a Data Consistent message after every background update and after a
stream of changes, this is the appropriate time to check the data flags and
determine if processing should be permitted.
processTally is routine which performs the desired tally calculations.
An alternative is to perform tally calculations in a different part of the
program but only if dataConsistent is true. Specific tally calculations
depend on the application and are beyond the scope of this document. In
practice, you wouldn’t need both dataConsistent and
Failure of the communications link for even a short period of time may
allow tally updates to be missed and the receiver’s view of the data to be
out of date. For this reason, some mechanism (represented by
onSerialTimeout ( )) should be implemented which detects lack of com-
munication activity. If this occurs, tally calculations should be suspended
and all data blocks should be marked as invalid. Tally calculations can
resume after all data blocks have been refreshed and a Data Consistent
message has been received.
At least one background update will be sent on a regular basis. The frequency of this update is a function of the link baud rate as shown in the
table above. The inactivity timeouts listed in the table are based on 120% of
the update sequence length for 50 Hz operation (since it has a longer field
time (20 mS)).
processTally.
Switcher Products — Protocols Manual29
Section 1 — Tally Protocol
Kayenne Contribution Tally Protocol
This section describes the Contribution Tally Protocol that applies to
Kayenne switchers. This protocol has a modified form of the earlier
Kalypso and Zodiak switcher protocols.
Contribution tally makes it possible to determine which sources contribute
to the image at any point in the video path. On-air tally, for example, iden
tifies which sources contribute in some way to the main program output of
the switcher.
Contribution messages indicate which sources are selected on buses
feeding each processing block (ME, eDPM, etc.) and which of those inputs
contribute to each output of a processing block. In the case where a pro
cessing block has several outputs, a separate contribution map is included
for each output.
Contribution information for each processing block is sent as a separate
message. All portions of the system are included in the contribution dump
even if they are inactive. Active blocks will be updated whenever their tally
information changes.
-
-
Message Structure and Summary
Messages start with two message code bytes followed by the message data.
•The first message code byte has 0xF in the upper nibble and a command
code in the lower nibble.
•The second message code byte has 0xF in the upper nibble and an
instance number in the lower nibble.
The previous Kalypso protocol used identical two message codes in
sequence to indicate start of message. This algorithm depended on the fact
that message codes were always greater than 128 and source ID’s were 128
or less so that two message codes in sequence was unique. This new
method allows for source ID’s up to and including 240 (0xF0).
Message code bytes always have their most significant 4 bits set on. The
command code is in the least significant 4 bits of the first message code
byte. The instance ID is in the least significant 4 bits of the second message
code byte. The instance ID is 1 based and is never 0.
The new sync algorithm is to detect two consecutive bytes with 0xF in the
upper nibble. This allows message data to use all eight bits. To make the
sync pattern unique, messages have been organized so that bytes con
taining contribution map data are always separated with bytes containing
source ID data. This makes detecting the beginning of messages possible
and preserves efficient use of message data bytes for encoding tally infor
mation.
-
-
30Switcher Products — Protocols Manual
Loading...
+ 122 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.