| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
This package offers a python interface for the Behringer XAir, Midas MR series of digital rack mixers. I only have access to an MR18 for testing so if there is an error in the kind maps feel free to raise an issue or PR.
For an outline of past/future changes refer to: CHANGELOG
pip install xair-api
A toml file named config.toml, placed into the current working directory of your code may be used to configure the mixers ip. A valid config.toml may resemble:
[connection]
ip = "<ip address>"Alternatively you may pass it as a keyword argument.
import xair_api
def main():
kind_id = 'XR18'
ip = '<ip address>'
with xair_api.connect(kind_id, ip=ip) as mixer:
mixer.strip[8].config.name = 'sm7b'
mixer.strip[8].mix.on = True
print(
f'strip 09 ({mixer.strip[8].config.name}) on has been set to {mixer.strip[8].mix.on}'
)
if __name__ == '__main__':
main()Currently the following devices are supported:
The X32 is partially supported. However, this document covers specifically the XAir series.
The following keyword arguments may be passed:
mixer.lr
A class representing Main LR channel
mixer.strip
A Strip tuple containing a class for each input strip channel
mixer.bus
A Bus tuple containing a class for each output bus channel
mixer.dca
A DCA tuple containing a class for each DCA group
mixer.fx
An FX tuple containing a class for each FX channel
mixer.fxsend
An FXSend tuple containing a class for each FX Send channel
mixer.fxreturn
An FXReturn tuple containing a class for each FX Return channel
mixer.auxreturn
A class representing auxreturn channel
mixer.config
A class representing the main config settings
mixer.headamp
A class representing the channel preamps (phantom power/gain).
Contains the subclasses: (Config, Dyn, Insert, EQ, Mix)
Contains the subclasses: (Config, Preamp, Gate, Dyn, Insert, GEQ, EQ, Mix, Group, Automix, Send)
Contains the subclasses: (Config, Dyn, Insert, EQ, Mix, Group)
Contains the subclasses: (Config, Mix, Group)
Contains the subclasses: (Config, Preamp, EQ, Mix, Group, Send)
Contains the subclasses: (Config, Preamp, EQ, Mix, Group, Send)
The following properties are available:
For each subclass the corresponding properties are available.
Config
Preamp
Gate
Dyn
Insert
GEQ The following method names preceded by slider_
for example: slider_20, slider_6k3 etc..
EQ
For the subclasses: low, low2, lomid, himid, high2, high the following properties are available:
for example: eq.low2.type
Mix
Group
Automix
The following method names preceded by chlink
The following method names preceded by buslink
for example: chlink1_2, buslink5_6 etc..
For the subclass monitor the following properties are available
for example: config.monitor.chmode
tuple containing a class for each mute group
for example: config.mute_group[0].on = True
for example: mixer.strip[10].send[3].level = -16.5
Send an OSC command directly to the mixer
for example:
mixer.send('/ch/01/mix/on', 1)
mixer.send('/bus/2/config/name', 'somename')Query the value of a command:
for example:
print(mixer.query('/ch/01/mix/on'))Install poetry and then:
poetry poe test-xair
poetry poe test-x32Unplug any expensive equipment and save your current settings to a snapshot first.
This project is licensed under the MIT License - see the LICENSE file for details
Peter Dikant for writing the base class
| Back | FazBrowse Home | New Git URL |