update README with flag changes

This commit is contained in:
onyx-and-iris 2025-12-02 02:09:50 +00:00
parent ca15785789
commit 1950d6dd8e

View File

@ -2,9 +2,9 @@
## `Tested against`
- Basic 1.1.1.1
- Banana 2.1.1.1
- Potato 3.1.1.1
- Basic 1.1.1.9
- Banana 2.1.1.9
- Potato 3.1.1.9
## `Requirements`
@ -18,12 +18,14 @@
Where:
- `h`: Prints the help message.
- `h`: Print the help message.
- `v`: Print the version of vmrcli.
- `i`: Enable interactive mode, use (-I) to disable the '>>' prompt.
- 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
- `v`: Enable extra console output (toggle, set messages)
- `f`: Do not split input on spaces.
- `l`: Set log level, must be one of TRACE, DEBUG, INFO, WARN, ERROR, or FATAL
- `e`: Enable extra console output (toggle, set messages)
- `c`: Load a user configuration (give the full file path)
- `m`: Launch the MacroButtons application
- `s`: Launch the StreamerView application
@ -39,13 +41,23 @@ Examples:
Launch basic GUI, set log level to INFO, Toggle Strip 0 Mute, print its new value, then decrease Bus 0 Gain by 3.8
```powershell
.\vmrcli.exe -kbasic -D2 !strip[0].mute strip[0].mute bus[0].gain-=3.8
.\vmrcli.exe -kbasic -lINFO !strip[0].mute strip[0].mute bus[0].gain-=3.8
```
Launch banana GUI, set log level to DEBUG, set Strip 0 label to podmic then print Strip 2 label
```powershell
.\vmrcli.exe -kbanana -D1 strip[0].label=podmic strip[2].label
.\vmrcli.exe -kbanana -lDEBUG strip[0].label=podmic strip[2].label
```
#### `String Commands With Spaces`
It may be desirable to send a string request containing spaces, for example to change an output device. By default the CLI splits such strings, to avoid this pass the `-f` flag. It's probably best to use this with single commands only due to its effect on how the CLI parses strings. Also note the inclusion of the double quotation marks, it seems the C API requires them.
```powershell
.\vmrcli.exe -lDEBUG -f bus[1].device.wdm='"Realtek Digital Output (Realtek(R) Audio)"'
.\vmrcli.exe -lDEBUG -f strip[0].label='"My Podmic"'
```
#### `Quick Commands`
@ -82,13 +94,13 @@ API commands follow the same rules as listed above. Entering `Q` or `q` will exi
Scripts can be loaded from text files, for example in Powershell:
```powershell
.\vmrcli.exe -D1 $(Get-Content .\example_commands.txt)
.\vmrcli.exe -lDEBUG $(Get-Content .\example_commands.txt)
```
You may also pipe a scripts contents to the CLI:
```powershell
$(Get-Content .\example_commands.txt) | .\vmrcli.exe -D1 -I
$(Get-Content .\example_commands.txt) | .\vmrcli.exe -lDEBUG -I
```
Multiple API commands can be in a single line, they may be separated by space, `;` or `,`.