VBANTXT package with a CLI
Go to file
2024-11-03 15:47:03 +00:00
cmd/vbantxt separate the cli from the vbantxt package 2024-11-03 15:44:10 +00:00
testdata add external vm/matrix tests 2024-11-03 15:47:03 +00:00
.gitignore initial commit 2022-11-05 18:58:36 +00:00
CHANGELOG.md CHANGELOG added 2024-06-28 06:51:23 +01:00
client.go reorganise some of the internals of the package. 2024-11-03 15:46:14 +00:00
errors.go reorganise some of the internals of the package. 2024-11-03 15:46:14 +00:00
go.mod initial commit 2022-11-05 18:58:36 +00:00
go.sum initial commit 2022-11-05 18:58:36 +00:00
LICENSE Initial commit 2022-09-23 09:29:14 +01:00
option.go reorganise some of the internals of the package. 2024-11-03 15:46:14 +00:00
packet.go reorganise some of the internals of the package. 2024-11-03 15:46:14 +00:00
README.md upd tested against 2024-06-28 22:23:47 +01:00
vbantxt_test.go add external vm/matrix tests 2024-11-03 15:47:03 +00:00
vbantxt.go reorganise some of the internals of the package. 2024-11-03 15:46:14 +00:00

Windows Linux

VBAN Sendtext CLI Utility

Send Voicemeeter string requests over a network or to Matrix

For an outline of past/future changes refer to: CHANGELOG

Tested against

  • Basic 1.1.1.1
  • Banana 2.1.1.1
  • Potato 3.1.1.1
  • Matrix 1.0.0.3

Requirements

  • Voicemeeter or 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:

[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.


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"