mirror of
https://github.com/onyx-and-iris/nvda-voicemeeter.git
synced 2026-04-07 09:53:35 +00:00
Compare commits
2 Commits
v.0.2.1.b1
...
v.0.2.2
| Author | SHA1 | Date | |
|---|---|---|---|
| d722154325 | |||
| ac14b7ad0d |
@@ -1,6 +1,6 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "nvda_voicemeeter"
|
name = "nvda_voicemeeter"
|
||||||
version = "0.2.1b1"
|
version = "0.2.2"
|
||||||
description = "A Voicemeeter app compatible with NVDA"
|
description = "A Voicemeeter app compatible with NVDA"
|
||||||
authors = [
|
authors = [
|
||||||
{ name = "onyx-and-iris", email = "code@onyxandiris.online" },
|
{ name = "onyx-and-iris", email = "code@onyxandiris.online" },
|
||||||
|
|||||||
@@ -48,12 +48,8 @@ class NVDAVMWindow(psg.Window):
|
|||||||
[self[f"PATCH COMPOSITE||PC{i + 1}"].Widget.config(**buttonmenu_opts) for i in range(self.kind.phys_out)]
|
[self[f"PATCH COMPOSITE||PC{i + 1}"].Widget.config(**buttonmenu_opts) for i in range(self.kind.phys_out)]
|
||||||
slider_opts = {"takefocus": 1, "highlightthickness": 1}
|
slider_opts = {"takefocus": 1, "highlightthickness": 1}
|
||||||
for i in range(self.kind.num_strip):
|
for i in range(self.kind.num_strip):
|
||||||
if i < self.kind.phys_in:
|
for param in util.get_slider_params(i, self.vm):
|
||||||
for param in util.get_slider_params(i, self.vm):
|
self[f"STRIP {i}||SLIDER {param}"].Widget.config(**slider_opts)
|
||||||
self[f"STRIP {i}||SLIDER {param}"].Widget.config(**slider_opts)
|
|
||||||
else:
|
|
||||||
for param in ("BASS", "MID", "TREBLE"):
|
|
||||||
self[f"STRIP {i}||SLIDER {param}"].Widget.config(**slider_opts)
|
|
||||||
self[f"STRIP {i}||SLIDER GAIN"].Widget.config(**slider_opts)
|
self[f"STRIP {i}||SLIDER GAIN"].Widget.config(**slider_opts)
|
||||||
if self.kind.name != "basic":
|
if self.kind.name != "basic":
|
||||||
self[f"STRIP {i}||SLIDER LIMIT"].Widget.config(**slider_opts)
|
self[f"STRIP {i}||SLIDER LIMIT"].Widget.config(**slider_opts)
|
||||||
@@ -109,6 +105,15 @@ class NVDAVMWindow(psg.Window):
|
|||||||
self[f"{key}||SLIDER"].update(value=value)
|
self[f"{key}||SLIDER"].update(value=value)
|
||||||
for i in range(self.kind.num_strip):
|
for i in range(self.kind.num_strip):
|
||||||
self[f"STRIP {i}||SLIDER GAIN"].update(value=self.vm.strip[i].gain)
|
self[f"STRIP {i}||SLIDER GAIN"].update(value=self.vm.strip[i].gain)
|
||||||
|
if self.kind.name != "basic":
|
||||||
|
self[f"STRIP {i}||SLIDER LIMIT"].update(value=self.vm.strip[i].limit)
|
||||||
|
for param in util.get_slider_params(i, self.vm):
|
||||||
|
if param in ("AUDIBILITY", "BASS", "MID", "TREBLE"):
|
||||||
|
val = getattr(self.vm.strip[i], param.lower())
|
||||||
|
else:
|
||||||
|
target = getattr(self.vm.strip[i], param.lower())
|
||||||
|
val = target.knob
|
||||||
|
self[f"STRIP {i}||SLIDER {param}"].update(value=val)
|
||||||
for i in range(self.kind.num_bus):
|
for i in range(self.kind.num_bus):
|
||||||
self[f"BUS {i}||SLIDER GAIN"].update(value=self.vm.bus[i].gain)
|
self[f"BUS {i}||SLIDER GAIN"].update(value=self.vm.bus[i].gain)
|
||||||
if self.kind.name != "basic":
|
if self.kind.name != "basic":
|
||||||
@@ -211,6 +216,7 @@ class NVDAVMWindow(psg.Window):
|
|||||||
self[f"STRIP {i}||SLIDER {param}"].bind("<Shift-KeyPress-Down>", "||KEY SHIFT DOWN")
|
self[f"STRIP {i}||SLIDER {param}"].bind("<Shift-KeyPress-Down>", "||KEY SHIFT DOWN")
|
||||||
self[f"STRIP {i}||SLIDER {param}"].bind("<Control-KeyPress-Up>", "||KEY CTRL UP")
|
self[f"STRIP {i}||SLIDER {param}"].bind("<Control-KeyPress-Up>", "||KEY CTRL UP")
|
||||||
self[f"STRIP {i}||SLIDER {param}"].bind("<Control-KeyPress-Down>", "||KEY CTRL DOWN")
|
self[f"STRIP {i}||SLIDER {param}"].bind("<Control-KeyPress-Down>", "||KEY CTRL DOWN")
|
||||||
|
self[f"STRIP {i}||SLIDER {param}"].bind("<Control-Shift-KeyPress-R>", "||KEY CTRL SHIFT R")
|
||||||
|
|
||||||
# Bus Params
|
# Bus Params
|
||||||
params = ["MONO", "EQ", "MUTE", "MODE"]
|
params = ["MONO", "EQ", "MUTE", "MODE"]
|
||||||
@@ -237,6 +243,7 @@ class NVDAVMWindow(psg.Window):
|
|||||||
self[f"BUS {i}||SLIDER GAIN"].bind("<Shift-KeyPress-Down>", "||KEY SHIFT DOWN")
|
self[f"BUS {i}||SLIDER GAIN"].bind("<Shift-KeyPress-Down>", "||KEY SHIFT DOWN")
|
||||||
self[f"BUS {i}||SLIDER GAIN"].bind("<Control-KeyPress-Up>", "||KEY CTRL UP")
|
self[f"BUS {i}||SLIDER GAIN"].bind("<Control-KeyPress-Up>", "||KEY CTRL UP")
|
||||||
self[f"BUS {i}||SLIDER GAIN"].bind("<Control-KeyPress-Down>", "||KEY CTRL DOWN")
|
self[f"BUS {i}||SLIDER GAIN"].bind("<Control-KeyPress-Down>", "||KEY CTRL DOWN")
|
||||||
|
self[f"BUS {i}||SLIDER GAIN"].bind("<Control-Shift-KeyPress-R>", "||KEY CTRL SHIFT R")
|
||||||
|
|
||||||
def popup_save_as(self, message, title=None, initial_folder=None):
|
def popup_save_as(self, message, title=None, initial_folder=None):
|
||||||
layout = [
|
layout = [
|
||||||
@@ -723,9 +730,7 @@ class NVDAVMWindow(psg.Window):
|
|||||||
self.vm.event.pdirty = False
|
self.vm.event.pdirty = False
|
||||||
label = self.cache["labels"][f"STRIP {index}||LABEL"]
|
label = self.cache["labels"][f"STRIP {index}||LABEL"]
|
||||||
val = values[f"STRIP {index}||SLIDER {param}"]
|
val = values[f"STRIP {index}||SLIDER {param}"]
|
||||||
if param == "LIMIT":
|
self.nvda.speak(f"{label} {param} slider {int(val) if param == 'LIMIT' else val}")
|
||||||
val = int(val)
|
|
||||||
self.nvda.speak(f"{label} {param} slider {val}")
|
|
||||||
case [
|
case [
|
||||||
["STRIP", index],
|
["STRIP", index],
|
||||||
[
|
[
|
||||||
@@ -900,6 +905,23 @@ class NVDAVMWindow(psg.Window):
|
|||||||
case "LIMIT":
|
case "LIMIT":
|
||||||
self.vm.strip[int(index)].limit = util.check_bounds(val, (-40, 12))
|
self.vm.strip[int(index)].limit = util.check_bounds(val, (-40, 12))
|
||||||
self[f"STRIP {index}||SLIDER {param}"].update(value=util.check_bounds(val, (-40, 12)))
|
self[f"STRIP {index}||SLIDER {param}"].update(value=util.check_bounds(val, (-40, 12)))
|
||||||
|
case [["STRIP", index], ["SLIDER", param], ["KEY", "CTRL", "SHIFT", "R"]]:
|
||||||
|
match param:
|
||||||
|
case "GAIN":
|
||||||
|
self.vm.strip[int(index)].gain = 0
|
||||||
|
self[f"STRIP {index}||SLIDER {param}"].update(value=0)
|
||||||
|
case "COMP" | "GATE" | "DENOISER":
|
||||||
|
setattr(target, "knob", 0)
|
||||||
|
self[f"STRIP {index}||SLIDER {param}"].update(value=0)
|
||||||
|
case "AUDIBILITY":
|
||||||
|
self.vm.strip[int(index)].audibility = 0
|
||||||
|
self[f"STRIP {index}||SLIDER {param}"].update(value=0)
|
||||||
|
case "BASS" | "MID" | "TREBLE":
|
||||||
|
setattr(self.vm.strip[int(index)], param.lower(), 0)
|
||||||
|
self[f"STRIP {index}||SLIDER {param}"].update(value=0)
|
||||||
|
case "LIMIT":
|
||||||
|
self.vm.strip[int(index)].limit = 12
|
||||||
|
self[f"STRIP {index}||SLIDER {param}"].update(value=12)
|
||||||
|
|
||||||
# Bus Params
|
# Bus Params
|
||||||
case [["BUS", index], [param]]:
|
case [["BUS", index], [param]]:
|
||||||
@@ -1009,6 +1031,9 @@ class NVDAVMWindow(psg.Window):
|
|||||||
val -= 0.1
|
val -= 0.1
|
||||||
self.vm.bus[int(index)].gain = util.check_bounds(val, (-60, 12))
|
self.vm.bus[int(index)].gain = util.check_bounds(val, (-60, 12))
|
||||||
self[f"BUS {index}||SLIDER GAIN"].update(value=val)
|
self[f"BUS {index}||SLIDER GAIN"].update(value=val)
|
||||||
|
case [["BUS", index], ["SLIDER", "GAIN"], ["KEY", "CTRL", "SHIFT", "R"]]:
|
||||||
|
self.vm.bus[int(index)].gain = 0
|
||||||
|
self[f"BUS {index}||SLIDER GAIN"].update(value=0)
|
||||||
|
|
||||||
# Unknown
|
# Unknown
|
||||||
case _:
|
case _:
|
||||||
|
|||||||
Reference in New Issue
Block a user