Compare commits

...

5 Commits

Author SHA1 Message Date
Onyx and Iris
5992e25c79 upd VMBuses 2026-01-07 14:38:53 +00:00
b2dda092aa upd bus names 2026-01-07 14:21:43 +00:00
04047577c6 up mute_game_pcs() 2026-01-07 14:17:13 +00:00
2abcaefecc if patch_iris case 2026-01-07 13:42:09 +00:00
e9126f0f59 add more buttons for syncing 2026-01-07 13:41:29 +00:00
3 changed files with 34 additions and 8 deletions

View File

@ -146,7 +146,7 @@ gain = 0.0
mode = "normal"
[bus-1]
label = "ASIO [1,2]"
label = "System"
mono = false
eq.on = false
mute = false
@ -154,7 +154,7 @@ gain = 0.0
mode = "normal"
[bus-2]
label = "ASIO [3,4]"
label = "Comms"
mono = false
eq.on = false
mute = false
@ -162,7 +162,7 @@ gain = 0.0
mode = "normal"
[bus-3]
label = "ASIO [5,6]"
label = "Pretzel"
mono = false
eq.on = false
mute = false
@ -170,7 +170,7 @@ gain = 0.0
mode = "normal"
[bus-4]
label = "ASIO [7,8]"
label = "GAME PCs"
mono = false
eq.on = false
mute = false

View File

@ -70,6 +70,26 @@ class Audio(ILayer):
self.logger.info('Only Stream Enabled')
else:
self.logger.info('Only Stream Disabled')
case 'sound_test':
if current_value:
self.logger.info('Sound Test Enabled')
else:
self.logger.info('Sound Test Disabled')
case 'patch_onyx':
if current_value:
self.logger.info('Onyx mic has been patched')
else:
self.logger.info('Onyx mic has been unpatched')
case 'patch_iris':
if current_value:
self.logger.info('Iris mic has been patched')
else:
self.logger.info('Iris mic has been unpatched')
case 'mute_game_pcs':
if current_value:
self.logger.info('Game PCs Muted')
else:
self.logger.info('Game PCs Unmuted')
setattr(self.state, button.name, current_value)
@ -162,6 +182,7 @@ class Audio(ILayer):
self.vm.strip[VMStrips.onyx_mic].apply({'A1': False, 'B1': True, 'B3': True, 'mute': True})
self.vm.strip[VMStrips.iris_mic].apply({'A1': False, 'B2': True, 'B3': True, 'mute': True})
self.logger.info('Sound Test Disabled')
self.vm.button[Buttons.sound_test].stateonly = self.state.sound_test
@ensure_mixer_fadeout
def stage_onyx_mic(self):
@ -205,6 +226,7 @@ class Audio(ILayer):
else:
self.vm.patch.asio[0].set(0)
self.logger.info('Onyx mic has been unpatched')
self.vm.button[Buttons.patch_onyx].stateonly = self.state.patch_onyx
def patch_iris(self):
self.state.patch_iris = not self.state.patch_iris
@ -214,15 +236,17 @@ class Audio(ILayer):
else:
self.vm.patch.asio[2].set(0)
self.logger.info('Iris mic has been unpatched')
self.vm.button[Buttons.patch_iris].stateonly = self.state.patch_iris
def mute_game_pcs(self):
self.state.mute_game_pcs = not self.state.mute_game_pcs
if self.state.mute_game_pcs:
self.mixer.strip[XAirStrips.game_pcs].send[XAirBuses.stream_mix].level = -90
self.vm.bus[VMBuses.game_pcs].mute = True
self.logger.info('Game PCs Muted')
else:
self.mixer.strip[XAirStrips.game_pcs].send[XAirBuses.stream_mix].level = -24
self.vm.bus[VMBuses.game_pcs].mute = False
self.logger.info('Game PCs Unmuted')
self.vm.button[Buttons.mute_game_pcs].stateonly = self.state.mute_game_pcs
### Workstation and TV Audio Routing via VBAN ###

View File

@ -1,10 +1,12 @@
from enum import IntEnum
Buttons = IntEnum('Buttons', 'mute_mics only_discord only_stream', start=0)
Buttons = IntEnum(
'Buttons', 'mute_mics only_discord only_stream sound_test patch_onyx patch_iris mute_game_pcs', start=0
)
# Voicemeeter Channels
VMStrips = IntEnum('Strips', 'onyx_mic iris_mic onyx_pc iris_pc st_input_5 system comms pretzel', start=0)
VMBuses = IntEnum('Buses', 'onyx_mic iris_mic both_mics', start=5)
VMBuses = IntEnum('Buses', 'system comms pretzel game_pcs onyx_mic iris_mic both_mics', start=1)
# VBAN Channels
VBANChannels = IntEnum('VBANChannels', 'onyx_mic iris_mic comms workstation', start=0)