Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OSC doesn't automatically start up in DAW #7293

Closed
mkruselj opened this issue Nov 7, 2023 · 3 comments · Fixed by #7311
Closed

OSC doesn't automatically start up in DAW #7293

mkruselj opened this issue Nov 7, 2023 · 3 comments · Fixed by #7311
Labels
Bug Report Item submitted using the Bug Report template OSC Issues related to Open Sound Control (OSC) API
Milestone

Comments

@mkruselj
Copy link
Collaborator

mkruselj commented Nov 7, 2023

The problem being that tryOSCStartup() is currently called from prepareToPlay, but it requires data from DAWExtraState, however we only get this data when setStateInformation() is called, which happens after prepareToPlay.

Atomics, etc. @baconpaul.

@mkruselj mkruselj added Bug Report Item submitted using the Bug Report template OSC Issues related to Open Sound Control (OSC) API labels Nov 7, 2023
@mkruselj mkruselj added this to the Surge XT 1.3 milestone Nov 7, 2023
@baconpaul
Copy link
Collaborator

@mkruselj I think (think) the right approach is https://github.com/baconpaul/surge/tree/maybe-this-7293 but I am not sure how to test. Can you give that a whirl and let me know?

@mkruselj
Copy link
Collaborator Author

mkruselj commented Nov 13, 2023

@baconpaul Unfortunately that doesn't seem to have done it.

How to test? Open this Reaper project:

osctest.zip

It has two Surge instances (note, they are both opened side by side on a dual monitor setup, you may not see the second one - but if it works for the first instance, it will also work for the second instance). DAWExtraState already has the right flags for is OSC started and OSC ports stored (which you can query if you breakpoint at a convenient point). It's just that OSC connections aren't starting upon project load/plugin init/unstream from plugin chunk. You would see the OSC Settings menu entry say "stop connections" instead of "start connections" if connections were active.

@baconpaul
Copy link
Collaborator

OK my branch works exactly like that with your test case if you have audio running and tracks unmuted.

But if you don't, no luck.

That is, luckily, easy to fix. Push coming soon.

baconpaul added a commit to baconpaul/surge that referenced this issue Nov 18, 2023
now the OSC info is in DawExtra we need to start after a load and no earlier
so we do that here by handling it in both the set state and prepare to play
inbound cases. Works with 2 things in reaper muted or un on macos.

Closes surge-synthesizer#7293
baconpaul added a commit that referenced this issue Nov 18, 2023
* OSC Startup from Various Unstream Cases

now the OSC info is in DawExtra we need to start after a load and no earlier
so we do that here by handling it in both the set state and prepare to play
inbound cases. Works with 2 things in reaper muted or un on macos.

Closes #7293
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Report Item submitted using the Bug Report template OSC Issues related to Open Sound Control (OSC) API
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants