Models

Enumerations

Used in the API to represent a set of possible values for a given field.

class goxlr.types.enums.PathType(value)
Profiles = 1
MicProfiles = 2
Presets = 3
Samples = 4
Icons = 5
Logs = 6
class goxlr.types.enums.LogLevel(value)
Off = 1
Error = 2
Warn = 3
Info = 4
Debug = 5
Trace = 6
class goxlr.types.enums.Channel(value)
Mic = 1
LineIn = 2
Console = 3
System = 4
Game = 5
Chat = 6
Sample = 7
Music = 8
Headphones = 9
MicMonitor = 10
LineOut = 11
class goxlr.types.enums.Mix(value)
A = 1
B = 2
class goxlr.types.enums.SubMixChannel(value)
Mic = 1
LineIn = 2
Console = 3
System = 4
Game = 5
Chat = 6
Sample = 7
Music = 8
class goxlr.types.enums.Fader(value)
A = 1
B = 2
C = 3
D = 4
class goxlr.types.enums.Encoder(value)
Pitch = 1
Gender = 2
Reverb = 3
Echo = 4
class goxlr.types.enums.OutputDevice(value)
Headphones = 1
BroadcastMix = 2
ChatMic = 3
Sampler = 4
LineOut = 5
StreamMix2 = 6
class goxlr.types.enums.InputDevice(value)
Microphone = 1
Chat = 2
Music = 3
Game = 4
Console = 5
LineIn = 6
System = 7
Samples = 8
class goxlr.types.enums.EffectKey(value)
DisableMic = 344
BleepLevel = 115
GateMode = 16
GateThreshold = 17
GateEnabled = 20
GateAttenuation = 21
GateAttack = 22
GateRelease = 23
MicCompSelect = 331
Equalizer31HzFrequency = 294
Equalizer31HzGain = 295
Equalizer63HzFrequency = 248
Equalizer63HzGain = 249
Equalizer125HzFrequency = 275
Equalizer125HzGain = 276
Equalizer250HzFrequency = 297
Equalizer250HzGain = 298
Equalizer500HzFrequency = 278
Equalizer500HzGain = 279
Equalizer1KHzFrequency = 285
Equalizer1KHzGain = 286
Equalizer2KHzFrequency = 300
Equalizer2KHzGain = 301
Equalizer4KHzFrequency = 288
Equalizer4KHzGain = 289
Equalizer8KHzFrequency = 265
Equalizer8KHzGain = 266
Equalizer16KHzFrequency = 303
Equalizer16KHzGain = 304
CompressorThreshold = 317
CompressorRatio = 316
CompressorAttack = 318
CompressorRelease = 319
CompressorMakeUpGain = 320
DeEsser = 11
ReverbAmount = 118
ReverbDecay = 47
ReverbEarlyLevel = 55
ReverbTailLevel = 57
ReverbPredelay = 48
ReverbLowColor = 50
ReverbHighColor = 51
ReverbHighFactor = 52
ReverbDiffuse = 49
ReverbModSpeed = 53
ReverbModDepth = 54
ReverbType = 46
EchoAmount = 117
EchoFeedback = 40
EchoTempo = 31
EchoDelayL = 34
EchoDelayR = 35
EchoFeedbackL = 36
EchoFeedbackR = 37
EchoXFBLtoR = 38
EchoXFBRtoL = 39
EchoSource = 30
EchoDivL = 32
EchoDivR = 33
EchoFilterStyle = 42
PitchAmount = 93
PitchCharacter = 359
PitchThreshold = 345
GenderAmount = 96
MegaphoneAmount = 60
MegaphonePostGain = 64
MegaphoneStyle = 58
MegaphoneHP = 61
MegaphoneLP = 62
MegaphonePreGain = 63
MegaphoneDistType = 65
MegaphonePresenceGain = 66
MegaphonePresenceFC = 67
MegaphonePresenceBW = 68
MegaphoneBeatboxEnable = 69
MegaphoneFilterControl = 70
MegaphoneFilter = 71
MegaphoneDrivePotGainCompMid = 72
MegaphoneDrivePotGainCompMax = 73
RobotLowGain = 308
RobotLowFreq = 307
RobotLowWidth = 309
RobotMidGain = 314
RobotMidFreq = 313
RobotMidWidth = 315
RobotHiGain = 311
RobotHiFreq = 310
RobotHiWidth = 312
RobotWaveform = 327
RobotPulseWidth = 326
RobotThreshold = 343
RobotDryMix = 333
RobotStyle = 0
HardTuneKeySource = 89
HardTuneAmount = 90
HardTuneRate = 92
HardTuneWindow = 91
HardTuneScale = 94
HardTunePitchAmount = 95
RobotEnabled = 334
MegaphoneEnabled = 215
HardTuneEnabled = 216
Encoder1Enabled = 213
Encoder2Enabled = 214
Encoder3Enabled = 336
Encoder4Enabled = 337
class goxlr.types.enums.MicrophoneParamKey(value)
MicType = 0
DynamicGain = 1
CondenserGain = 2
JackGain = 3
GateThreshold = 197120
GateAttack = 197632
GateRelease = 198144
GateAttenuation = 198912
CompressorThreshold = 393728
CompressorRatio = 393984
CompressorAttack = 394240
CompressorRelease = 394752
CompressorMakeUpGain = 395008
BleepLevel = 459008

These are the values for the GoXLR mini, it seems there’s a difference in how the two are setup, The Mini does EQ via mic parameters, where as the full does it via effects.

Equalizer90HzFrequency = 262144
Equalizer90HzGain = 262145
Equalizer250HzFrequency = 262147
Equalizer250HzGain = 262148
Equalizer500HzFrequency = 262150
Equalizer500HzGain = 262151
Equalizer1KHzFrequency = 327680
Equalizer1KHzGain = 327681
Equalizer3KHzFrequency = 327683
Equalizer3KHzGain = 327684
Equalizer8KHzFrequency = 327686
Equalizer8KHzGain = 327687
class goxlr.types.enums.FaderDisplayStyle(value)
TwoColour = 1
Gradient = 2
Meter = 3
GradientMeter = 4
class goxlr.types.enums.Button(value)
Fader1Mute = 1
Fader2Mute = 2
Fader3Mute = 3
Fader4Mute = 4
Bleep = 5
Cough = 6
EffectSelect1 = 7
EffectSelect2 = 8
EffectSelect3 = 9
EffectSelect4 = 10
EffectSelect5 = 11
EffectSelect6 = 12
EffectFx = 13
EffectMegaphone = 14
EffectRobot = 15
EffectHardTune = 16
SamplerSelectA = 17
SamplerSelectB = 18
SamplerSelectC = 19
SamplerTopLeft = 20
SamplerTopRight = 21
SamplerBottomLeft = 22
SamplerBottomRight = 23
SamplerClear = 24
class goxlr.types.enums.SimpleColourTarget(value)
Global = 1
Accent = 2
Scribble1 = 3
Scribble2 = 4
Scribble3 = 5
Scribble4 = 6
class goxlr.types.enums.SamplerColourTarget(value)
SamplerSelectA = 1
SamplerSelectB = 2
SamplerSelectC = 3
class goxlr.types.enums.EncoderColourTarget(value)
Reverb = 1
Pitch = 2
Echo = 3
Gender = 4
class goxlr.types.enums.ButtonColourGroup(value)
FaderMute = 1
EffectSelector = 2
EffectTypes = 3
class goxlr.types.enums.ButtonColourOffStyle(value)
Dimmed = 1
Colour2 = 2
DimmedColour2 = 3
class goxlr.types.enums.MuteFunction(value)
All = 1
ToStream = 2
ToVoiceChat = 3
ToPhones = 4
ToLineOut = 5
ToStreams = 6
class goxlr.types.enums.MicrophoneType(value)
Dynamic = 1
Condenser = 2
Jack = 3
class goxlr.types.enums.EffectBankPreset(value)
Preset1 = 1
Preset2 = 2
Preset3 = 3
Preset4 = 4
Preset5 = 5
Preset6 = 6
class goxlr.types.enums.SampleBank(value)
A = 1
B = 2
C = 3
class goxlr.types.enums.MiniEqFrequency(value)
Equalizer90Hz = 1
Equalizer250Hz = 2
Equalizer500Hz = 3
Equalizer1KHz = 4
Equalizer3KHz = 5
Equalizer8KHz = 6
class goxlr.types.enums.EqFrequency(value)
Equalizer31Hz = 1
Equalizer63Hz = 2
Equalizer125Hz = 3
Equalizer250Hz = 4
Equalizer500Hz = 5
Equalizer1KHz = 6
Equalizer2KHz = 7
Equalizer4KHz = 8
Equalizer8KHz = 9
Equalizer16KHz = 10
class goxlr.types.enums.CompressorRatio(value)
Ratio1_0 = 1
Ratio1_1 = 2
Ratio1_2 = 3
Ratio1_4 = 4
Ratio1_6 = 5
Ratio1_8 = 6
Ratio2_0 = 7
Ratio2_5 = 8
Ratio3_2 = 9
Ratio4_0 = 10
Ratio5_6 = 11
Ratio8_0 = 12
Ratio16_0 = 13
Ratio32_0 = 14
Ratio64_0 = 15
class goxlr.types.enums.GateTime(value)
Gate10ms = 1
Gate20ms = 2
Gate30ms = 3
Gate40ms = 4
Gate50ms = 5
Gate60ms = 6
Gate70ms = 7
Gate80ms = 8
Gate90ms = 9
Gate100ms = 10
Gate110ms = 11
Gate120ms = 12
Gate130ms = 13
Gate140ms = 14
Gate150ms = 15
Gate160ms = 16
Gate170ms = 17
Gate180ms = 18
Gate190ms = 19
Gate200ms = 20
Gate250ms = 21
Gate300ms = 22
Gate350ms = 23
Gate400ms = 24
Gate450ms = 25
Gate500ms = 26
Gate550ms = 27
Gate600ms = 28
Gate650ms = 29
Gate700ms = 30
Gate750ms = 31
Gate800ms = 32
Gate850ms = 33
Gate900ms = 34
Gate950ms = 35
Gate1000ms = 36
Gate1100ms = 37
Gate1200ms = 38
Gate1300ms = 39
Gate1400ms = 40
Gate1500ms = 41
Gate1600ms = 42
Gate1700ms = 43
Gate1800ms = 44
Gate1900ms = 45
Gate2000ms = 46
class goxlr.types.enums.CompressorAttackTime(value)
Comp0ms = 1
Comp2ms = 2
Comp3ms = 3
Comp4ms = 4
Comp5ms = 5
Comp6ms = 6
Comp7ms = 7
Comp8ms = 8
Comp9ms = 9
Comp10ms = 10
Comp12ms = 11
Comp14ms = 12
Comp16ms = 13
Comp18ms = 14
Comp20ms = 15
Comp23ms = 16
Comp26ms = 17
Comp30ms = 18
Comp35ms = 19
Comp40ms = 20
class goxlr.types.enums.CompressorReleaseTime(value)
Comp0ms = 1
Comp15ms = 2
Comp25ms = 3
Comp35ms = 4
Comp45ms = 5
Comp55ms = 6
Comp65ms = 7
Comp75ms = 8
Comp85ms = 9
Comp100ms = 10
Comp115ms = 11
Comp140ms = 12
Comp170ms = 13
Comp230ms = 14
Comp340ms = 15
Comp680ms = 16
Comp1000ms = 17
Comp1500ms = 18
Comp2000ms = 19
Comp3000ms = 20
class goxlr.types.enums.ReverbStyle(value)
Library = 1
DarkBloom = 2
MusicClub = 3
RealPlate = 4
Chapel = 5
HockeyArena = 6
class goxlr.types.enums.EchoStyle(value)
Quarter = 1
Eighth = 2
Triplet = 3
PingPong = 4
ClassicSlap = 5
MultiTap = 6
class goxlr.types.enums.PitchStyle(value)
Narrow = 1
Wide = 2
class goxlr.types.enums.GenderStyle(value)
Narrow = 1
Medium = 2
Wide = 3
class goxlr.types.enums.MegaphoneStyle(value)
Megaphone = 1
Radio = 2
OnThePhone = 3
Overdrive = 4
BuzzCutt = 5
Tweed = 6
class goxlr.types.enums.RobotStyle(value)
Robot1 = 1
Robot2 = 2
Robot3 = 3
class goxlr.types.enums.RobotRange(value)
Low = 1
Medium = 2
High = 3
class goxlr.types.enums.HardTuneStyle(value)
Natural = 1
Medium = 2
Hard = 3
class goxlr.types.enums.HardTuneSource(value)
All = 1
Music = 2
Game = 3
LineIn = 4
System = 5
class goxlr.types.enums.SampleButton(value)
TopLeft = 1
TopRight = 2
BottomLeft = 3
BottomRight = 4
class goxlr.types.enums.SamplePlaybackMode(value)
PlayNext = 1
PlayStop = 2
PlayFade = 3
StopOnRelease = 4
FadeOnRelease = 5
Loop = 6
class goxlr.types.enums.SamplePlayOrder(value)
Sequential = 1
Random = 2
class goxlr.types.enums.DisplayMode(value)
Simple = 1
Advanced = 2
class goxlr.types.enums.DisplayModeComponent(value)
NoiseGate = 1
Equaliser = 2
Compressor = 3
EqFineTune = 4
class goxlr.types.enums.MuteState(value)
Unmuted = 1
MutedToX = 2
MutedToAll = 3
class goxlr.types.enums.AnimationMode(value)
RetroRainbow = 1
RainbowDark = 2
RainbowBright = 3
Simple = 4
Ripple = 5
NONE = 6
class goxlr.types.enums.WaterfallDirection(value)
Down = 1
Up = 2
Off = 3
class goxlr.types.enums.DeviceType(value)
Unknown = 1
Full = 2
Mini = 3
class goxlr.types.enums.IDType(value)
Heartbeat: int = 0
Patch: int = 18446744073709551615
class goxlr.types.enums.PatchOperation(value)
Add = 1
Remove = 2
Replace = 3
Copy = 4
Move = 5
Test = 6

Dataclasses

Used in this library to represent the data returned by the API.

class goxlr.types.models.HttpSettings(http_settings: dict)
Parameters:

http_settings (dict)

enabled: bool
bind_address: str
cors_enabled: bool
port: int
class goxlr.types.models.Config(config: dict)
Parameters:

config (dict)

http_settings: HttpSettings
daemon_version: str
autostart_enabled: bool
show_tray_icon: bool
tts_enabled: bool
allow_network_access: bool
log_level: LogLevel
class goxlr.types.models.MixerVersions(mixer_version: dict)
Parameters:

mixer_version (dict)

firmware: List[int]
fpga_count: int
dice: List[int]
class goxlr.types.models.USBDevice(usb_device: dict)
Parameters:

usb_device (dict)

manufacturer_name: str
product_name: str
version: List[int]
bus_number: int
address: int
identifier: str
class goxlr.types.models.HardwareInfo(hardware_info: dict)
Parameters:

hardware_info (dict)

versions: MixerVersions
serial_number: str
manufactured_date: datetime
device_type: DeviceType
usb_device: USBDevice
class goxlr.types.models.Scribble(scribble: dict)
Parameters:

scribble (dict)

file_name: str
bottom_text: str
left_text: str
inverted: bool
class goxlr.types.models.FaderStatus(fader_status: dict)
Parameters:

fader_status (dict)

channel: Channel
mute_type: MuteFunction
scribble: Scribble
mute_state: MuteState
class goxlr.types.models.Equaliser(equaliser: dict)
Parameters:

equaliser (dict)

gain: Dict[EqFrequency, int]
frequency: Dict[EqFrequency, float]
class goxlr.types.models.EqMini(eq_mini: dict)
Parameters:

eq_mini (dict)

gain: Dict[MiniEqFrequency, int]
frequency: Dict[MiniEqFrequency, float]
class goxlr.types.models.NoiseGate(noise_gate: dict)
Parameters:

noise_gate (dict)

threshold: int
attack: int
release: int
enabled: bool
attenuation: int
class goxlr.types.models.Compressor(compressor: dict)
Parameters:

compressor (dict)

threshold: int
ratio: int
attack: int
release: int
makeup_gain: int
class goxlr.types.models.MicStatus(mic_status: dict)
Parameters:

mic_status (dict)

mic_type: MicrophoneType
mic_gains: Dict[MicrophoneType, int]
equaliser: Equaliser
equaliser_mini: EqMini
noise_gate: NoiseGate
compressor: Compressor
class goxlr.types.models.Submix(submix: dict)
Parameters:

submix (dict)

volume: int
linked: bool
ratio: float
class goxlr.types.models.Submixes(submixes: dict)
Parameters:

submixes (dict)

inputs: Dict[SubMixChannel, Submix]
outputs: Dict[OutputDevice, Mix]
class goxlr.types.models.Levels(levels: dict)
Parameters:

levels (dict)

submix_supported: bool
output_monitor: OutputDevice
volumes: Dict[Channel, int]
submix: Submixes | None
bleep: int
deess: int
class goxlr.types.models.CoughButton(cough_button: dict)
Parameters:

cough_button (dict)

state: MuteState
is_toggle: bool
mute_type: MuteFunction
class goxlr.types.models.Animation(animation: dict)
Parameters:

animation (dict)

supported: bool
mode: AnimationMode
mod1: int
mod2: int
waterfall_direction: WaterfallDirection
class goxlr.types.models.Colours(colour1, colour2=None, colour3=None)

Store up to three colours for a lighting style.

Can be initialised with a dict or up to three strings.

Parameters:
  • colour1 (dict | str)

  • colour2 (str)

  • colour3 (str)

colour_one: str
colour_two: str | None
colour_three: str | None
class goxlr.types.models.FaderLighting(lighting: dict)
Parameters:

lighting (dict)

style: FaderDisplayStyle
colours: Colours
class goxlr.types.models.ButtonLighting(lighting: dict)
Parameters:

lighting (dict)

off_style: ButtonColourOffStyle
colours: Colours
class goxlr.types.models.Lighting(lighting: dict)
Parameters:

lighting (dict)

animation: Animation
faders: Dict[Fader, FaderLighting]
buttons: Dict[Button, ButtonLighting]
simple: Dict[SimpleColourTarget, Colours]
sampler: Dict[SamplerColourTarget, ButtonLighting]
encoders: Dict[Encoder, Colours]
class goxlr.types.models.Reverb(reverb: dict)
Parameters:

reverb (dict)

style: ReverbStyle
amount: int
decay: int
early_level: int
tail_level: int
pre_delay: int
lo_colour: int
hi_colour: int
hi_factor: int
diffuse: int
mod_speed: int
mod_depth: int
class goxlr.types.models.Echo(echo: dict)
Parameters:

echo (dict)

style: EchoStyle
amount: int
feedback: int
tempo: int
delay_left: int
delay_right: int
feedback_left: int
feedback_right: int
feedback_xfb_l_to_r: int
feedback_xfb_r_to_l: int
class goxlr.types.models.Pitch(pitch: dict)
Parameters:

pitch (dict)

style: PitchStyle
amount: int
character: int
class goxlr.types.models.Gender(gender: dict)
Parameters:

gender (dict)

style: GenderStyle
amount: int
class goxlr.types.models.Megaphone(megaphone: dict)
Parameters:

megaphone (dict)

is_enabled: bool
style: MegaphoneStyle
amount: int
post_gain: int
class goxlr.types.models.Robot(robot: dict)
Parameters:

robot (dict)

is_enabled: bool
style: RobotStyle
low_gain: int
low_freq: int
low_width: int
mid_gain: int
mid_freq: int
mid_width: int
high_gain: int
high_freq: int
high_width: int
waveform: int
pulse_width: int
threshold: int
dry_mix: int
class goxlr.types.models.HardTune(hard_tune: dict)
Parameters:

hard_tune (dict)

is_enabled: bool
style: HardTuneStyle
amount: int
rate: int
window: int
source: HardTuneSource
class goxlr.types.models.CurrentEffects(effects: dict)
Parameters:

effects (dict)

reverb: Reverb
echo: Echo
pitch: Pitch
gender: Gender
megaphone: Megaphone
robot: Robot
hard_tune: HardTune
class goxlr.types.models.Effects(effects: dict)
Parameters:

effects (dict)

is_enabled: bool
active_preset: EffectBankPreset
preset_names: Dict[EffectBankPreset, str]
current: CurrentEffects
class goxlr.types.models.Sample(sample: dict)
Parameters:

sample (dict)

name: str
start_pct: float
stop_pct: float
class goxlr.types.models.SampleMetadata(sample_button: dict)
Parameters:

sample_button (dict)

function: SamplePlaybackMode
order: SamplePlayOrder
samples: List[Sample]
is_playing: bool
is_recording: bool
class goxlr.types.models.SamplerProcessState(process_state: dict)
Parameters:

process_state (dict)

progress: int | None
last_error: str | None
class goxlr.types.models.Sampler(sampler: dict)
Parameters:

sampler (dict)

processing_state: SamplerProcessState
active_bank: SampleBank
clear_active: bool
record_buffer: int
banks: Dict[SampleBank, Dict[SampleButton, SampleMetadata]]
class goxlr.types.models.DisplaySettings(display: dict)
Parameters:

display (dict)

gate: DisplayMode
compressor: DisplayMode
equaliser: DisplayMode
equaliser_fine: DisplayMode
class goxlr.types.models.MixerSettings(settings: dict)
Parameters:

settings (dict)

display: DisplaySettings
mute_hold_duration: int
vc_mute_also_mute_cm: bool
class goxlr.types.models.Mixer(mixer: dict)
Parameters:

mixer (dict)

hardware: HardwareInfo
shutdown_commands: List[Dict[str, str | List[str]]]
fader_status: Dict[Fader, FaderStatus]
mic_status: MicStatus
levels: Levels
router: Dict[InputDevice, Dict[OutputDevice, bool]]
cough_button: CoughButton
lighting: Lighting
effects: Effects
sampler: Sampler
settings: MixerSettings
button_down: Dict[Button, bool]
profile_name: str
mic_profile_name: str
class goxlr.types.models.Paths(paths: dict)
Parameters:

paths (dict)

profiles: str
mic_profiles: str
samples: str
presets: str
icons: str
logs: str
class goxlr.types.models.Files(files: dict)
Parameters:

files (dict)

profiles: List[str]
mic_profiles: List[str]
samples: Dict[str, str]
presets: List[str]
icons: List[str]
class goxlr.types.models.Status(status: dict)
Parameters:

status (dict)

config: Config
mixers: Dict[str, Mixer]
paths: Paths
files: Files
class goxlr.types.models.Patch(patch: dict)
Parameters:

patch (dict)

operation: PatchOperation
path: str
value: Any