This section explains how to consistently set up a Viz Engine for use with the DolbyE audio codec.

Note: We use zero-based channel numbering in this configuration (channels zero through 15).

One most important prerequisite is a dongle containing a license from Minnetonka, the firm which makes the Surcode encoder/decoder SDK. You must have audio setup for 16-channel embedded mode in Viz. The inputs containing a DolbyE stream should also be configured for 16-channel, or at least 8-channel, depending on how many other audio channels are in the SDI audio track.

Enable DolbyE

There is one global flag for this in the Viz config file, this must be set for decoding or encoding.

DolbyEEnabled = 1

Prepare for DolbyE Decoding

DolbyE uses two audio channels on input. These channels must be a contiguous pair (i.e. 0/1, 2/3, 4/5, or 6/7). On the transmit side SDI audio does work mainly with audio pairs, as well as groups.
The decoded data is always eight channels, and is always written to the upper eight channels, eight through 15.

You must specify two pieces of information:

  • The video channel (which live input to use).

  • The first audio channel in the pair.

For the first:

ChannelDolbyEnabled__0 = 1 // video live input 1 contains the DolbyE data, or
ChannelDolbyEnabled__3 = 1 // video live input 4 contains the DolbyE data

For the second, you specify the first channel in an audio pair:

ChannelDolbyPos__1 = 4 // video live input 2 contains the DolbyE data on channels 4/5

The channels containing the DolbyE stream are muted on output. For example, if your input consists of PCM audio on channels 0-5, and DolbyE data on channel 6-7, you get 14 channels of audio on output (given no other audio routing settings):

0 = input 0
1 = input 1
2 = input 2
3 = input 3
4 = input 4
5 = input 5
6 = silence – dolby data is muted
7 = silence – dolby data is muted
8 = decoded 0
9 = decoded 1
10 = decoded 2
11 = decoded 3
12 = decoded 4
13 = decoded 5
14 = decoded 6
15 = decoded 7

Prepare for DolbyE Encoding

In this case, we go from eight channels of PCM audio to two channels for the DolbyE stream. For input to the Dolby code, you can choose from two banks of eight channels: the lower eight (zero through seven) or the upper eight (eight through 15). The config field:

DolbyEOutput = 0 // No encoding
DolbyEOutput = 1 // Encode the lower eight, 0..7
DolbyEOutput = 2 // Encode the upper eight, 8..15

For output, you must give the first audio channel in a pair, which contains the DolbyE stream, for example:

DolbyEMixInPosition = 4 // goes out on channels 4/5

Decode Plus Encode

It is possible to perform a scenario which uses both encoding and decoding.

Pass-through Mode

There are settings which enables a DolbyE data stream to go through the Viz audio mixer untouched. Normally, if you send integer data through the mixer, the bits are changed on output, as the mixer uses floating point math, with a conversion on input and output. This renders the DolbyE stream unusable. The DolbyE data goes through the audio mixer unconverted to floating point along the way. 

ChannelDolbyEEnabled__0 = 1
ChannelDolbyEPos__0 = 0
ChannelDolbyEEnabled__1 = 1
ChannelDolbyEPos__1 = 2
ChannelDolbyEEnabled__2 = 1
ChannelDolbyEPos__2 = 4
ChannelDolbyEEnabled__3 = 1
ChannelDolbyEPos__3 = 6
ChannelDolbyEEnabled__4 = 1
ChannelDolbyEPos__4 = 8
ChannelDolbyEEnabled__5 = 1
ChannelDolbyEPos__5 = 10
ChannelDolbyEEnabled__6 = 1
ChannelDolbyEPos__6 = 12
ChannelDolbyEEnabled__7 = 1
ChannelDolbyEPos__7 = 14
DolbyEOutput = 0
DolbyEEnabled = 1
DolbyEMixInPosition = 0
DolbyELoop = 1

Note: For a simple pass-through no Dolby dongle is required.