From 8539685770d5164f8641cc6e22e62e7aaf51c033 Mon Sep 17 00:00:00 2001 From: onyx-and-iris Date: Thu, 5 Feb 2026 03:55:08 +0000 Subject: [PATCH] upd README --- README.md | 121 ++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 86 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 4ceb132..9e7e01a 100644 --- a/README.md +++ b/README.md @@ -9,32 +9,85 @@ go install github.com/onyx-and-iris/xair-cli@latest ### Use ```console -xair-cli is a command-line tool that allows users to send OSC messages -to Behringer X Air mixers for remote control and configuration. It supports -various commands to manage mixer settings directly from the terminal. +Usage: xair-cli [flags] -Usage: - xair-cli [flags] - xair-cli [command] - -Available Commands: - bus Commands to control individual buses - completion Generate the autocompletion script for the specified shell - headamp Commands to control headamp gain and phantom power - help Help about any command - main Commands to control the main output - raw Send a raw OSC message to the mixer - strip Commands to control individual strips +A CLI to control Behringer X-Air mixers. Flags: - -h, --help help for xair-cli - -H, --host string host address of the X Air mixer (default "mixer.local") - -k, --kind string Kind of mixer (xair, x32) (default "xair") - -l, --loglevel string Log level (debug, info, warn, error, fatal, panic) (default "warn") - -p, --port int Port number of the X Air mixer (default 10024) - -v, --version version for xair-cli + -h, --help Show context-sensitive help. + --host="mixer.local" The host of the X-Air device ($XAIR_CLI_HOST). + --port=10024 The port of the X-Air device ($XAIR_CLI_PORT). + --kind="xr18" The kind of the X-Air device ($XAIR_CLI_KIND). + -v, --version Print gobs-cli version information and quit -Use "xair-cli [command] --help" for more information about a command. +Commands: + completion (c) Generate shell completion scripts. + +Raw + raw send Send a raw OSC message to the mixer. + +Main + main mute Get or set the mute state of the Main L/R output. + main fader Get or set the fader level of the Main L/R output. + main fadein Get or set the fade-in time of the Main L/R output. + main fadeout Get or set the fade-out time of the Main L/R output. + +Strip + strip mute Get or set the mute state of the strip. + strip fader Get or set the fader level of the strip. + strip fadein Fade in the strip over a specified duration. + strip fadeout Fade out the strip over a specified duration. + strip send Get or set the send level for a specific bus. + strip name Get or set the name of the strip. + strip gate on Get or set the gate on/off state of the strip. + strip gate mode Get or set the gate mode of the strip. + strip gate threshold Get or set the gate threshold of the strip. + strip gate range Get the gate range of the strip. + strip gate attack Get or set the gate attack time of the strip. + strip gate hold Get or set the gate hold time of the strip. + strip gate release Get or set the gate release time of the strip. + strip eq on Get or set the EQ on/off state of the strip. + strip eq gain Get or set the gain of the EQ band. + strip eq freq Get or set the frequency of the EQ band. + strip eq q Get or set the Q factor of the EQ band. + strip eq type Get or set the type of the EQ band. + strip comp on Get or set the compressor on/off state of the strip. + strip comp mode Get or set the compressor mode of the strip. + strip comp threshold Get or set the compressor threshold of the strip. + strip comp ratio Get or set the compressor ratio of the strip. + strip comp mix Get or set the compressor mix of the strip. + strip comp makeup Get or set the compressor makeup gain of the strip. + strip comp attack Get or set the compressor attack time of the strip. + strip comp hold Get or set the compressor hold time of the strip. + strip comp release Get or set the compressor release time of the strip. + +Bus + bus mute Get or set the mute state of the bus. + bus fader Get or set the fader level of the bus. + bus fadein Fade in the bus over a specified duration. + bus fadeout Fade out the bus over a specified duration. + bus name Get or set the name of the bus. + bus eq on Get or set the EQ on/off state of the bus. + bus eq mode Get or set the EQ mode of the bus (graphic or parametric). + bus eq gain Get or set the gain of the EQ band. + bus eq freq Get or set the frequency of the EQ band. + bus eq q Get or set the Q factor of the EQ band. + bus eq type Get or set the type of the EQ band (bell, high shelf, low shelf, high pass, low pass). + bus comp on Get or set the compressor on/off state of the bus. + bus comp mode Get or set the compressor mode of the bus (standard, vintage, or modern). + bus comp threshold Get or set the compressor threshold of the bus (in dB). + bus comp ratio Get or set the compressor ratio of the bus. + bus comp mix Get or set the compressor mix level of the bus (in %). + bus comp makeup Get or set the compressor makeup gain of the bus (in dB). + bus comp attack Get or set the compressor attack time of the bus (in ms). + bus comp hold Get or set the compressor hold time of the bus (in ms). + bus comp release Get or set the compressor release time of the bus (in ms). + +Headamp + headamp gain Get or set the gain of the headamp. + headamp phantom Get or set the phantom power state of the headamp. + +Run "xair-cli --help" for more information on a command. ``` ### Examples @@ -45,36 +98,34 @@ Use "xair-cli [command] --help" for more information about a command. xair-cli main fadeout ``` -*enable phantom power and set the gain to 28.0dB over a 10s duration for strip 09* +*enable phantom power and set the gain to 28.0dB over a 10s duration for headamp (strip) 09* ```console -xair-cli headamp phantom 9 on +xair-cli headamp 9 phantom on -xair-cli headamp gain 9 28.0 --duration 10s +xair-cli headamp 9 gain --duration 10s 18.0 ``` *set strip 09 send level for bus 5 to -18.0dB* ```console -xair-cli strip send 9 5 -- -18.0 +xair-cli strip 9 send 5 -- -18.0 ``` *enable eq for strip 01* ```console -xair-cli strip eq on 1 true +xair-cli strip 1 eq on true ``` *rename bus 01 to 'vocal mix'* ```console -xair-cli bus name 1 'vocal mix' +xair-cli bus 1 name 'vocal mix' ``` -For every command/subcommand there exists a `--help` flag which you can use to get usage information. - - -### Notes - -This CLI is useful if just want to run some commands on the terminal using a single binary, no further downloads. However, there exists an alternative you should check out that has wider support of the XAir OSC protocol including support for operations like batch commands and network discovery (which I have no plans to implement on this CLI). Check out [dc-xair-cli](https://pypi.org/project/dc-xair-cli/) on pypi. - ### License `xair-cli` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license. + + +### Notes + +For an alternative, python implementation consider checking out [dc-xair-cli](https://pypi.org/project/dc-xair-cli/). It supports some operations like batch commands and network discovery which this CLI doesn't (and I have no plans to implement them).