mirror of
https://github.com/onyx-and-iris/vban-cli.git
synced 2026-03-12 09:59:14 +00:00
Compare commits
4 Commits
cd5b8b0636
...
2ca89515be
| Author | SHA1 | Date | |
|---|---|---|---|
| 2ca89515be | |||
| 6cd92a2975 | |||
| 36a8ec124a | |||
| 4dd01a0e99 |
@ -1,11 +1,11 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "vban-cli"
|
name = "vban-cli"
|
||||||
version = "0.12.1"
|
version = "0.12.5"
|
||||||
description = "A command-line interface for Voicemeeter leveraging VBAN."
|
description = "A command-line interface for Voicemeeter leveraging VBAN."
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
license = { text = "LICENSE" }
|
license = { text = "LICENSE" }
|
||||||
requires-python = ">=3.13"
|
requires-python = ">=3.13"
|
||||||
dependencies = ["cyclopts>=4.6.0", "loguru>=0.7.3", "vban-cmd>=2.9.4"]
|
dependencies = ["cyclopts>=4.6.0", "loguru>=0.7.3", "vban-cmd>=2.9.6"]
|
||||||
classifiers = [
|
classifiers = [
|
||||||
"Development Status :: 4 - Beta",
|
"Development Status :: 4 - Beta",
|
||||||
"Programming Language :: Python",
|
"Programming Language :: Python",
|
||||||
|
|||||||
@ -106,3 +106,43 @@ def mode(
|
|||||||
app.console.print(ctx.client.bus[index].mode.get())
|
app.console.print(ctx.client.bus[index].mode.get())
|
||||||
return
|
return
|
||||||
setattr(ctx.client.bus[index].mode, type_, True)
|
setattr(ctx.client.bus[index].mode, type_, True)
|
||||||
|
|
||||||
|
|
||||||
|
@app.command(name='gain')
|
||||||
|
def gain(
|
||||||
|
new_value: Annotated[Optional[float], Argument()] = None,
|
||||||
|
*,
|
||||||
|
index: Annotated[int, Parameter(parse=False)],
|
||||||
|
ctx: Annotated[Context, Parameter(parse=False)],
|
||||||
|
):
|
||||||
|
"""Get or set the gain of the specified bus.
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
new_value : float, optional
|
||||||
|
If provided, sets the gain to this value. If not provided, the current gain is printed.
|
||||||
|
"""
|
||||||
|
if new_value is None:
|
||||||
|
app.console.print(ctx.client.bus[index].gain)
|
||||||
|
return
|
||||||
|
ctx.client.bus[index].gain = new_value
|
||||||
|
|
||||||
|
|
||||||
|
@app.command(name='label')
|
||||||
|
def label(
|
||||||
|
new_value: Annotated[Optional[str], Argument()] = None,
|
||||||
|
*,
|
||||||
|
index: Annotated[int, Parameter(parse=False)],
|
||||||
|
ctx: Annotated[Context, Parameter(parse=False)],
|
||||||
|
):
|
||||||
|
"""Get or set the label of the specified bus.
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
new_value : str, optional
|
||||||
|
If provided, sets the label to this value. If not provided, the current label is printed.
|
||||||
|
"""
|
||||||
|
if new_value is None:
|
||||||
|
app.console.print(ctx.client.bus[index].label)
|
||||||
|
return
|
||||||
|
ctx.client.bus[index].label = new_value
|
||||||
|
|||||||
@ -5,7 +5,11 @@ from cyclopts import App, Parameter
|
|||||||
from .context import Context
|
from .context import Context
|
||||||
from .help import BaseHelpFormatter
|
from .help import BaseHelpFormatter
|
||||||
|
|
||||||
app = App(name='command', help_formatter=BaseHelpFormatter())
|
app = App(
|
||||||
|
name='command',
|
||||||
|
help='Execute commands that perform actions',
|
||||||
|
help_formatter=BaseHelpFormatter(),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.command(name='show')
|
@app.command(name='show')
|
||||||
@ -46,3 +50,23 @@ def restart(
|
|||||||
"""Restart the Voicemeeter engine."""
|
"""Restart the Voicemeeter engine."""
|
||||||
ctx.client.command.restart()
|
ctx.client.command.restart()
|
||||||
app.console.print('Voicemeeter engine should now be restarting.')
|
app.console.print('Voicemeeter engine should now be restarting.')
|
||||||
|
|
||||||
|
|
||||||
|
@app.command(name='lock')
|
||||||
|
def lock(
|
||||||
|
*,
|
||||||
|
ctx: Annotated[Context, Parameter(parse=False)],
|
||||||
|
):
|
||||||
|
"""Lock the Voicemeeter GUI."""
|
||||||
|
ctx.client.command.lock = True
|
||||||
|
app.console.print('Voicemeeter GUI should now be locked.')
|
||||||
|
|
||||||
|
|
||||||
|
@app.command(name='unlock')
|
||||||
|
def unlock(
|
||||||
|
*,
|
||||||
|
ctx: Annotated[Context, Parameter(parse=False)],
|
||||||
|
):
|
||||||
|
"""Unlock the Voicemeeter GUI."""
|
||||||
|
ctx.client.command.lock = False
|
||||||
|
app.console.print('Voicemeeter GUI should now be unlocked.')
|
||||||
|
|||||||
@ -5,7 +5,11 @@ from cyclopts import App, Argument, Parameter
|
|||||||
from .context import Context
|
from .context import Context
|
||||||
from .help import StripHelpFormatter
|
from .help import StripHelpFormatter
|
||||||
|
|
||||||
app = App(name='comp', help_formatter=StripHelpFormatter())
|
app = App(
|
||||||
|
name='comp',
|
||||||
|
help='Control the compressor settings',
|
||||||
|
help_formatter=StripHelpFormatter(),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.command(name='knob')
|
@app.command(name='knob')
|
||||||
|
|||||||
@ -5,7 +5,11 @@ from cyclopts import App, Argument, Parameter
|
|||||||
from .context import Context
|
from .context import Context
|
||||||
from .help import StripHelpFormatter
|
from .help import StripHelpFormatter
|
||||||
|
|
||||||
app = App(name='denoiser', help_formatter=StripHelpFormatter())
|
app = App(
|
||||||
|
name='denoiser',
|
||||||
|
help='Control the denoiser settings',
|
||||||
|
help_formatter=StripHelpFormatter(),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.command(name='knob')
|
@app.command(name='knob')
|
||||||
|
|||||||
@ -5,7 +5,11 @@ from cyclopts import App, Argument, Parameter
|
|||||||
from .context import Context
|
from .context import Context
|
||||||
from .help import StripHelpFormatter
|
from .help import StripHelpFormatter
|
||||||
|
|
||||||
app = App(name='gate', help_formatter=StripHelpFormatter())
|
app = App(
|
||||||
|
name='gate',
|
||||||
|
help='Control the gate settings',
|
||||||
|
help_formatter=StripHelpFormatter(),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.command(name='knob')
|
@app.command(name='knob')
|
||||||
|
|||||||
@ -7,7 +7,11 @@ from . import validation
|
|||||||
from .context import Context
|
from .context import Context
|
||||||
from .help import BaseHelpFormatter
|
from .help import BaseHelpFormatter
|
||||||
|
|
||||||
app = App(name='recorder', help_formatter=BaseHelpFormatter())
|
app = App(
|
||||||
|
name='recorder',
|
||||||
|
help='Control the recorder playback and recording',
|
||||||
|
help_formatter=BaseHelpFormatter(),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.command(name='play')
|
@app.command(name='play')
|
||||||
|
|||||||
@ -270,3 +270,23 @@ def b3(
|
|||||||
app.console.print(ctx.client.strip[index].B3)
|
app.console.print(ctx.client.strip[index].B3)
|
||||||
return
|
return
|
||||||
ctx.client.strip[index].B3 = new_value
|
ctx.client.strip[index].B3 = new_value
|
||||||
|
|
||||||
|
|
||||||
|
@app.command(name='label')
|
||||||
|
def label(
|
||||||
|
new_value: Annotated[Optional[str], Argument()] = None,
|
||||||
|
*,
|
||||||
|
index: Annotated[int, Parameter(parse=False)],
|
||||||
|
ctx: Annotated[Context, Parameter(parse=False)],
|
||||||
|
):
|
||||||
|
"""Get or set the label of the specified strip.
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
new_value : str, optional
|
||||||
|
If provided, sets the label to this value. If not provided, the current label is printed.
|
||||||
|
"""
|
||||||
|
if new_value is None:
|
||||||
|
app.console.print(ctx.client.strip[index].label)
|
||||||
|
return
|
||||||
|
ctx.client.strip[index].label = new_value
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user