Fairlight audio mixer

Some of the newer models of the ATEM switchers have Fairlight audio mixers in them instead of the more basic ATEM audio mixers of the previous models. These mostly use new commands to control the mixer.

class pyatem.command.FairlightMasterPropertiesCommand(eq_gain=None, dynamics_gain=None, volume=None, afv=None, eq_enable=None)

Implementation of the CFMP command. This sets the settings the master channel of fairlight audio.

Offset

Size

Type

Description

0

1

u8

Mask, see table below

6

2

i16

EQ gain [-2000 - 2000]

10

2

u16

Dynamics make-up gain [0 - 2000]

12

4

i32

Master volume [-10000 - 1000]

16

1

bool

Audio follow video

17

1

bool

Enable master EQ

18

2

?

unknown

Bit

Mask value

0

EQ Enable

1

EQ Gain

2

Dynamics gain

3

Master volume

4

AFV

5

?

6

?

7

?

__init__(eq_gain=None, dynamics_gain=None, volume=None, afv=None, eq_enable=None)
Parameters:
  • eq_gain – Make-up gain for the master EQ dialog

  • dynamics_gain – Make-up gain for the master Dynamics dialog

  • volume – Master volume fader value

  • afv – Make the master volume follow the fade-to-black function

  • eq_enable – Enable the EQ on the master bus

class pyatem.command.FairlightStripPropertiesCommand(source, channel, delay=None, gain=None, eq_gain=None, eq_enable=None, dynamics_gain=None, balance=None, volume=None, state=None)

Implementation of the CFSP command. This sets the settings of a channel strip in fairlight audio.

The source index is the same as the video source index from the InputProperties fields.

For normal channel strips the channel index should be -1. If the channel is split (two mono channels instead of a stereo input) the channel numbers are 0 and 1.

Offset

Size

Type

Description

0

2

u16

Mask, see table below

2

2

u16

Source index

15

1

u8

Channel number

16

1

u8

Delay in frames

22

4

i32

Gain [-10000 - 600]

30

2

i16

EQ Gain

34

2

u16

Dynamics Gain

36

2

i16

Pan [-10000 - 10000]

40

4

i32

volume [-10000 - 1000]

44

1

u8

State

45

3

?

unknown

Bit

Mask value

0

Delay

1

Gain

2

?

3

EQ Enable

4

EQ Gain

5

Dynamics gain

6

Balance

7

Volume

8

State

__init__(source, channel, delay=None, gain=None, eq_gain=None, eq_enable=None, dynamics_gain=None, balance=None, volume=None, state=None)
Parameters:
  • source – The source index

  • channel – The channel index inside the source, -1 for the normal stereo channels and 0 and 1 for split

  • delay – Delay in frames

  • gain – Input gain

  • eq_gain – Make-up gain from the EQ dialog

  • eq_enable – Enable the EQ block

  • dynamics_gain – Make-up gain from the dynamics dialog

  • balance – Channel balance or pan

  • volume – The volume fader level

  • state – Bitfield for the mute and AFV state. 1=off, 2=on, 4=afv

Level meters

class pyatem.command.SendFairlightLevelsCommand(enable)

Implementation of the SFLN command. This enables or disables receiving the 10Hz audio level update packets for the Audio page.

Offset

Size

Type

Description

0

1

bool

Enable sending levels

1

3

?

unknown

__init__(enable)
Parameters:

enable – Enable or disable receiving audio level data