vbantxt-cli/README.md
2024-06-28 22:23:47 +01:00

107 lines
2.4 KiB
Markdown

![Windows](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white)
![Linux](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black)
# VBAN Sendtext CLI Utility
Send Voicemeeter string requests over a network or to Matrix
For an outline of past/future changes refer to: [CHANGELOG](CHANGELOG.md)
## `Tested against`
- Basic 1.1.1.1
- Banana 2.1.1.1
- Potato 3.1.1.1
- Matrix 1.0.0.3
## `Requirements`
- [Voicemeeter](https://voicemeeter.com/) or [Matrix](https://vb-audio.com/Matrix/)
- Go 1.18 or greater (if you want to compile yourself, otherwise check `Releases`)
---
## `Command Line`
#### Flags
- `host` defaults to "localhost"
- `port` defaults to 6980
- `streamname` defaults to "Command1"
Pass `host`, `port` and `streamname` as flags, for example:
```
vbantxt-cli -h="gamepc.local" -p=6980 -s=Command1 "strip[0].mute=1 strip[1].mono=1"
```
You may also store them in a `config.toml` located in `home directory / .vbantxt_cli /`
A valid `config.toml` might look like this:
```toml
[connection]
Host="gamepc.local"
Port=6980
Streamname="Command1"
```
Command line flags will override values in a config.toml.
---
## `Matrix`
Sending commands to VB-Audio Matrix is also possible, for example:
```
vbantxt-cli -s=streamname "Point(ASIO128.IN[2],ASIO128.OUT[1]).dBGain = -8"
```
A documentation of all available Matrix instructions can be found on the [Voicemeeter forum][matrix-commands].
---
## `Script files`
The vbantxt-cli utility accepts a single string request or an array of string requests. This means you can pass scripts stored in files.
For example, in Windows with Powershell you could:
`vbantxt-cli $(Get-Content .\script.txt)`
Or with Bash:
`cat script.txt | xargs vbantxt-cli`
to load Voicemeeter commands from a file:
```
strip[0].mute=1;strip[0].mono=0
strip[1].mute=0;strip[1].mono=1
bus[3].eq.On=0
```
or for Matrix:
```
Point(ASIO128.IN[1..4],ASIO128.OUT[1]).dBGain = -3
Point(ASIO128.IN[1..4],ASIO128.OUT[2]).dBGain = -3
Point(ASIO128.IN[1..4],ASIO128.OUT[1]).Mute = 1
Point(ASIO128.IN[1..4],ASIO128.OUT[2]).Mute = 1
```
---
## `Logging`
Pass the `-l` flag with an argument from 0 up to 6.
0 = Panic, 1 = Fatal, 2 = Error, 3 = Warning, 4 = Info, 5 = Debug, 6 = Trace
For example, to set the log level to Debug:
`vbantxt-cli.exe -l=5 "strip[0].mute=0"`
[matrix-commands]: https://forum.vb-audio.com/viewtopic.php?t=1883&sid=9802ac9ddd9beff9475611d52a2164ba