Closed gitsmol closed 6 months ago
@baconpaul @gitsmol : I can recreate this, but do not know the reason for the behavior. All other Parameters are working fine, and there is nothing special about '/param/a/mixer/osc1/mute' that I know of. Here is a quick Python script to recreate the error; it is supposed to alternately mute and unmute Osc1 every 2 seconds. Mute the other Oscillators to make it obvious. You can hear that it mutes the mixer strip for Osc1 (and the UI reflects this), but the un-mute never happens, neither audio- or gui-wise. What is the secret to getting "/param/a/mixer/osc1/mute" to unmute?
from osc4py3.as_eventloop import *
from osc4py3 import oscbuildparse
import time
ip = "127.0.0.1"
port = 53280 #Surge XT default OSC in port
def oscOut(addr, val):
msg = oscbuildparse.OSCMessage(addr, ",f", [val])
osc_send(msg, "oscout")
osc_process()
osc_startup()
osc_udp_client(ip, port, "oscout")
for x in range(20):
oscOut("/param/a/mixer/osc1/mute", 1.0)
time.sleep(2)
oscOut("/param/a/mixer/osc1/mute", 0.0)
time.sleep(2)
osc_terminate()
@baconpaul I'm zeroing in on this one. It has to do with mute (at least) being stored as a bool in Parameter. There's a 'changed' check in the (OSC-resultant) update of parameters, which is only looking at p->val.f. I will fix this.
@baconpaul This one is fixed. #7626 is still not fixed.
Bug Description: Mute and solo commands sent over OSC are partially ignored.
Surge XT Version This was found in https://github.com/surge-synthesizer/surge/commit/520b6f862773388454fc7e83f7bf2f27663e1c1b. Not sure when the bug first occurs. It's not present in 1.3.1.
NB: the bug does not occur in CLI-mode. It's might be akin to 7417.
Reproduction Steps:
The same goes for solo-ing. Tested using OSCD and TouchOSC.
Expected Behavior: For the mute and unmute buttons to toggle on and off. For the UI and OSC to stay in step.
Computer Information (please complete the following!): Macbook M1 Mac OS Ventura 13.6.1