I have modified my code for the new Automation changes. Everything works except I am not able to record new automation. I can playback existing automation, but nothing new. I am thinking there must be a step I am missing to get it to record.
Previously, I simply selected the automation parameter, and then
Write generally isn’t what you want as it will just overwrite any existing automation on a track with the current value as soon as play starts. If it’s not doing that, then that’s a bug…
latch is fine. I am suggesting that it seems it should default to a value. So, since latch is most similar to the old behavior that seems like the logical choice. Then the user can choose to change it as needed.
Its not defaulting to latch for me. In my usage, I am not fetching the value in the manner you show. I simply assign the AutomationMode when I select the AutomatableParameter. And I am fine with that. It just seems the variable should be initialized to some default.
By the way, write mode does cleanup of redundant automation points, but latch mode does not.
where {} is the default for the enum which will be read.
I think that’s correct? Most hosts start with “read” for the automation don’t they?
I might be convinced it should be latch though…
Do you mean the AutomationCurve::simplify step isn’t being called for latch?
I think it should happen at punchOut which happens when play stops for latch?