ATEM audio mixer
This is the audio mixer interface present in most of the ATEM switchers. Some of the newer models have Fairlight audio mixing instead.
- class pyatem.field.AudioInputField(raw)
Data from the AMIP. Describes the inputs to the atem audio mixer
Offset
Size
Type
Descriptions
0
2
u16
Audio source index
2
1
u8
Input type
3
2
?
unknown
5
1
u8
Index in group
6
1
?
?
7
1
u8
Input plug
8
1
u8
State [0=off, 1=on, 2=afv]
10
2
u16
Channel volume
12
2
i16
Channel balance [-10000 - 10000]
Val
Input type
0
External video input
1
Media player audio
2
External audio input
Val
Plug type
0
Internal
1
SDI
2
HDMI
3
Component
4
Composite
5
SVideo
32
XLR
64
AES/EBU
128
RCA
After parsing: :ivar volume: Master volume for the mixer, signed int which maps [-10000 - 1000] to +10dB - -100dB (inf)
- plug_name()
Return the display name for the connector
- class pyatem.field.AudioMixerInputPropertiesField(raw)
Data from the AMIP. Settings for a channel strip on legacy audio units.
Offset
Size
Type
Descriptions
0
2
u16
Audio source index
2
1
u8
Type [0: External Video, 1: Media Player, 2: External Audio]
3
3
?
unknown
6
1
bool
From Media Player
7
1
u8
Plug Type [0: Internal, 1: SDI, 2: HDMI, 3: Component, 4: Composite, 5: SVideo, 32: XLR, 64, AES/EBU, 128 RCA]
8
1
u8
Mix Option [0: Off, 1: On, 2: AFV]
9
1
u8
unknown
10
2
u16
Volume [0 - 65381]
12
2
i16
Pan [-10000 - 10000]
14
1
u8
unknown
After parsing: :ivar volume: Master volume for the mixer, signed int which maps [-10000 - 1000] to +10dB - -100dB (inf) :ivar afv: Enable/disabled state for master audio-follow-video (for fade-to-black)
- class pyatem.field.AudioMixerMasterPropertiesField(raw)
Data from the AMMO. Settings for the master bus on legacy audio units.
Offset
Size
Type
Descriptions
0
2
u16
Program Gain
2
2
?
unknown
4
1
bool
Follow fade to black
5
1
?
unknown
After parsing: :ivar volume: Master volume for the mixer, unsigned int which maps [? - ?] to +10dB - -100dB (inf) :ivar afv: Wether the master volume follows the fade-to-bloack
- class pyatem.field.AudioMixerMonitorPropertiesField(raw)
Data from the AMmO. Settings for the monitor bus on legacy audio units.
Offset
Size
Type
Descriptions
0
1
bool
Monitoring enabled
1
1
?
unknown
2
2
u16
Volume
4
1
bool
Mute
5
1
bool
Solo
6
2
u16
Solo source index
8
1
bool
Dim
10
2
u16
Dim volume
After parsing: :ivar volume: Master volume for the mixer, unsigned int which maps [? - ?] to +10dB - -100dB (inf)
- class pyatem.field.AudioMixerTallyField(raw)
Data from the AMTl. Encodes the state of tally lights on the audio mixer
Offset
Size
Type
Descriptions
0
2
u16
Number of tally lights
2
2
u16
Audio Source
4
1
bool
IsMixedIn (On/Off)
Level meters
- class pyatem.field.AudioMeterLevelsField(raw)
Data from the AMLv. This contains the realtime audio levels for the audio mixer
Offset
Size
Type
Description
0
2
u16
Number of input channels
2
2
?
padding
4
4
u32
Master left level
8
4
u32
Master right level
12
4
u32
Master left peak
16
4
u32
Master right peak
20
4
u32
Monitor left level
24
4
u32
Monitor right level
28
4
u32
Monitor left peak
32
4
u32
Monitor right peak
?
4
u32
Input left level [These 4 repeat for the number of channels above]
?
4
u32
Input right level
?
4
u32
Input left peak
?
4
u32
Input right peak
After parsing: The levels are tuples in the format (left level, right level, left peak, right peak). :ivar count: Number of channels :ivar master: Master levels :ivar monitor: Monitor levels :ivar input: All input levels as a dict, the key is the channel number and the value a level tuple