Skip to content

Enhance AmbiRoomSim with automation paths and waveform timeline - #122

Open
MrDoe wants to merge 6 commits into
leomccormack:masterfrom
MrDoe:master
Open

MrDoe wants to merge 6 commits into
leomccormack:masterfrom
MrDoe:master

Conversation

@MrDoe

@MrDoe MrDoe commented Aug 13, 2026

Copy link
Copy Markdown

Added enhanced path automation with splines to AmbiRoomSim.

@jananifernandez

Copy link
Copy Markdown
Collaborator
Screenshot 2026-08-18 at 4 52 46 pm Hey, thanks! I've not had much time to review the code, but I did give the VST a go and have some initial impressions. I was able to draw trajectories for sources and the receiver, which works great! However, it does not affect the audio. There is also a way to load trajectories, but I couldn't find a way to save them? There is also some minor graphical inconsistencies, and some parts of the UI overlap other parts; although, I could also address those later. Most importantly, the plugin breaks existing projects that use sparta_ambiRoomSim; e.g., https://github.com/leomccormack/sparta-reaper-examples/tree/main/SixDegreesOfFreedomRendering We generally need to be quite careful to ensure smooth upgrades to newer versions, as much as we can. If this isn't possible, then perhaps we make it a separate plugin e.g. "sparta_ambiRoomSimModded"?

@MrDoe

MrDoe commented Aug 19, 2026

Copy link
Copy Markdown
Author

Hey, thanks for giving it a spin!

Sorry about the audio problem, that was my bad. The drawn path looks fine but wasn't actually driving anything because processBlock was still gated behind a global pathEnable flag that the UI never set (it already toggles per-source enabled instead). Fixed that in the last push, paths should follow now. Let me know if it still sounds stuck for you.

  • Save/load: Right now it's just saved with the project/host state, there's no separate "export trajectory" button. The load button you found is actually for the reference waveform in the timeline. Happy to add a proper export/import to file if that'd be useful, or we can keep it host-state only. Whatever you prefer.

  • UI overlap: I saw that too, especially the dropdown is covering parts of the waveform view. I can tidy up the layout, as a follow-up if you want to.

The breaking projects part is the important one, sorry about that! Removing those two dummy params shifted all the later params (sourceX etc) so old sessions/automation get misaligned. I can understand that that is not okay for an upgrade. Even though they aren't used anymore, we need to keep them in the layout for backwards compat.

Easiest fix is to just put pathEnable/pathLoop back as hidden deprecated dummies that do nothing (so old projects still load 1:1) and just ignore them. That's a one-liner and keeps everything compatible with 1.8.x and your reaper examples. I can push that straight away.

Or if you'd rather keep the original completely untouched, I'm also fine to spin this out as a separate sparta_ambiRoomSimModded plugin instead.

Which way would you prefer? I can push the dummy-restore fix in the next days if option 1 is good for you.

Thanks again for the review!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants