vmrcli/README.md
2024-07-02 10:14:25 +01:00

2.1 KiB

Voicemeeter Remote Command Line Utility

Tested against

  • Basic 1.1.1.1
  • Banana 2.1.1.1
  • Potato 3.1.1.1

Requirements

Use

./vmrcli.exe [-h] [-i] [-k] [-D] <api commands>

Where:

  • h: Prints the help dialogue.
  • i: Enable interactive mode. If set, any api commands passed on the command line will be ignored.
  • k: The kind of Voicemeeter (basic, banana or potato). Use this to launch the GUI.
  • D: Set log level 0=TRACE, 1=DEBUG, 2=INFO, 3=WARN, 4=ERROR, 5=FATAL

API Commands

  • Commands starting with ! will be toggled, use it with boolean parameters.
  • Commands containing = will set a value.
  • All other commands with get a value.

Examples:

Launch basic GUI, set log level to INFO, Toggle Strip 0 Mute, then print its new value

./vmrcli.exe -kbasic -D2 !strip[0].mute strip[0].mute

Launch banana GUI, set log level to DEBUG, set Strip 0 label to podmic then print Strip 2 label

./vmrcli.exe -kbanana -D1 strip[0].label=podmic strip[2].label

Interactive Mode

Running the following command in Powershell:

./vmrcli.exe -i

Will open an interactive prompt:

Interactive mode enabled. Enter 'Q' to exit.
>>

API commands follow the same rules as listed above. Entering Q or q will exit the program.

Script files

Scripts can be loaded from text files, for example in Powershell:

./vmrcli.exe -D1 $(Get-Content .\example_commands.txt)

Multiple API commands can be in a single line but they should be space separated.

Build

Run the included makefile with GNU Make.

By default the log.c module is built with coloured logging enabled. To disable this you can override the LOG_USE_COLOR variable, for example:

make LOG_USE_COLOR=no

Official Documentation

Special Thanks