2026-03-04 18:15:18 +00:00
2025-02-03 06:08:33 +00:00
2026-03-04 19:13:17 +00:00
2024-07-01 03:46:09 +01:00
2025-02-17 15:25:01 +00:00
2026-03-04 18:23:59 +00:00
2026-03-06 01:48:55 +00:00

Voicemeeter Remote Command Line Utility

License: MIT Platform

A command-line interface for controlling Voicemeeter

Compatibility

Voicemeeter Version Status
Basic 1.1.2.2 Tested
Banana 2.1.2.2 Tested
Potato 3.1.2.2 Tested

Requirements

  • Voicemeeter - Any version (Basic, Banana, or Potato)
  • Windows operating system
  • Command line environment (PowerShell, CMD, or Terminal)

Usage

.\vmrcli.exe [OPTIONS] <api_commands>

Command Line Options

Option Description Example
-h Print help message vmrcli.exe -h
-v Show version information vmrcli.exe -v
-i Enable interactive mode vmrcli.exe -i
-I Interactive mode without prompt vmrcli.exe -I
-f Don't split input on spaces vmrcli.exe -f
-k <type> Launch Voicemeeter GUI -kbasic, -kbanana, -kpotato
-l <level> Set log level -lDEBUG, -lINFO, -lWARN
-e Enable extra console output vmrcli.exe -e
-c <path> Load user configuration -c "C:\config.txt"
-m Launch MacroButtons app vmrcli.exe -m
-s Launch StreamerView app vmrcli.exe -s

Note: When using interactive mode (-i), command line API commands are ignored.

API Commands

Command Types

Syntax Action Example
!command Toggle boolean values !strip[0].mute
command=value Set a parameter strip[0].gain=2.5
command+=value Increment a parameter bus[0].gain+=1.2
command-=value Decrement a parameter bus[0].gain-=3.8
command Get current value strip[0].label

Tip: Use quotes around values containing spaces: 'strip[0].label="my device"'


Examples

Basic Operations

Toggle mute, get values, and adjust gain

.\vmrcli.exe -kbasic -lINFO !strip[0].mute strip[0].mute bus[0].gain-=3.8

Setting Labels with Spaces

Set labels and print them back

.\vmrcli.exe -kbanana -lDEBUG 'strip[0].label="my podmic"' strip[0].label

Device Configuration

Configure hardware devices with complex names

.\vmrcli.exe -lDEBUG bus[2].mute=1 bus[2].mute 'bus[2].device.wdm="Realtek Digital Output (Realtek(R) Audio)"'

Batch Operations

Multiple strip configurations in one command

.\vmrcli.exe `
  'strip[0].label="my podmic"' strip[0].label !strip[0].mute `
  'strip[1].label="my wavemic"' strip[1].label !strip[1].mute

Quick Commands

Convenient shortcuts for common Voicemeeter operations

Command API Equivalent Description
lock command.lock=1 🔒 Lock Voicemeeter parameters
unlock command.lock=0 🔓 Unlock Voicemeeter parameters
show command.show=1 👁️ Show Voicemeeter interface
hide command.show=0 🙈 Hide Voicemeeter interface
restart command.restart=1 🔄 Restart Voicemeeter engine

Available in both direct and interactive modes

Interactive Mode

Real-time command interface for live audio control

Start interactive session:

.\vmrcli.exe -i

Interactive prompt:

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

Important: Command line API arguments are ignored when using -i

Script Files

Automate complex audio setups with script files

Loading Scripts

From file content:

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

Via pipeline:

$(Get-Content .\example_commands.txt) | .\vmrcli.exe -lDEBUG -I

Script Format Rules

Feature Syntax Example
Multiple commands per line Space, ;, or , separated strip[0].mute=1;bus[0].gain+=2
Comments Lines starting with # # This is a comment

Build Instructions

Compile from source using GNU Make

Prerequisites

  • GNU Make
  • GCC compiler (recommended)
  • Windows development environment

Build Commands

# Standard build
make

# Disable colored logging
make LOG_USE_COLOR=no

# Clean build artifacts
make clean

Pre-built binaries are available in Releases with coloured logging enabled


Resources

Official Documentation

Acknowledgments

  • rxi - Creator of the excellent log.c logging library

License

This project is licensed under the MIT License - see the LICENSE file for details.

Description
Voicemeeter Remote CLI Utility
Readme MIT 561 KiB
Languages
C 98.8%
Makefile 1.2%