upd README

This commit is contained in:
onyx-and-iris 2026-02-05 03:55:08 +00:00
parent 8fc5a55eff
commit 8539685770

121
README.md
View File

@ -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 <command> [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 <index> mute Get or set the mute state of the strip.
strip <index> fader Get or set the fader level of the strip.
strip <index> fadein Fade in the strip over a specified duration.
strip <index> fadeout Fade out the strip over a specified duration.
strip <index> send Get or set the send level for a specific bus.
strip <index> name Get or set the name of the strip.
strip <index> gate on Get or set the gate on/off state of the strip.
strip <index> gate mode Get or set the gate mode of the strip.
strip <index> gate threshold Get or set the gate threshold of the strip.
strip <index> gate range Get the gate range of the strip.
strip <index> gate attack Get or set the gate attack time of the strip.
strip <index> gate hold Get or set the gate hold time of the strip.
strip <index> gate release Get or set the gate release time of the strip.
strip <index> eq on Get or set the EQ on/off state of the strip.
strip <index> eq <band> gain Get or set the gain of the EQ band.
strip <index> eq <band> freq Get or set the frequency of the EQ band.
strip <index> eq <band> q Get or set the Q factor of the EQ band.
strip <index> eq <band> type Get or set the type of the EQ band.
strip <index> comp on Get or set the compressor on/off state of the strip.
strip <index> comp mode Get or set the compressor mode of the strip.
strip <index> comp threshold Get or set the compressor threshold of the strip.
strip <index> comp ratio Get or set the compressor ratio of the strip.
strip <index> comp mix Get or set the compressor mix of the strip.
strip <index> comp makeup Get or set the compressor makeup gain of the strip.
strip <index> comp attack Get or set the compressor attack time of the strip.
strip <index> comp hold Get or set the compressor hold time of the strip.
strip <index> comp release Get or set the compressor release time of the strip.
Bus
bus <index> mute Get or set the mute state of the bus.
bus <index> fader Get or set the fader level of the bus.
bus <index> fadein Fade in the bus over a specified duration.
bus <index> fadeout Fade out the bus over a specified duration.
bus <index> name Get or set the name of the bus.
bus <index> eq on Get or set the EQ on/off state of the bus.
bus <index> eq mode Get or set the EQ mode of the bus (graphic or parametric).
bus <index> eq <band> gain Get or set the gain of the EQ band.
bus <index> eq <band> freq Get or set the frequency of the EQ band.
bus <index> eq <band> q Get or set the Q factor of the EQ band.
bus <index> eq <band> type Get or set the type of the EQ band (bell, high shelf, low shelf, high pass, low pass).
bus <index> comp on Get or set the compressor on/off state of the bus.
bus <index> comp mode Get or set the compressor mode of the bus (standard, vintage, or modern).
bus <index> comp threshold Get or set the compressor threshold of the bus (in dB).
bus <index> comp ratio Get or set the compressor ratio of the bus.
bus <index> comp mix Get or set the compressor mix level of the bus (in %).
bus <index> comp makeup Get or set the compressor makeup gain of the bus (in dB).
bus <index> comp attack Get or set the compressor attack time of the bus (in ms).
bus <index> comp hold Get or set the compressor hold time of the bus (in ms).
bus <index> comp release Get or set the compressor release time of the bus (in ms).
Headamp
headamp <index> gain Get or set the gain of the headamp.
headamp <index> phantom Get or set the phantom power state of the headamp.
Run "xair-cli <command> --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).