After a lot of testing and digging, I am convinced, that it is bad to save automated parameters in the getStateInformation() / setStateInformation():
- Parameters are stored by the host outside the private stateInformation chunk. That is, because a parameter is only valid for a given timepoint
- The host will set the parameter outside of each processBlock call, so setting a value yourself is counter productive
- At least in final cut setting a value during playback will move the whole graph to fit the value at that time point. This is the reason, why the graph jumps, if you press play hovering a position with a different value).
- Because the state might reflect a different snapshot, it must not restore automated parameters. So not setting a value from setStateInformation avoids that problem in FCPX. Maybe it does as well for other hosts…
Can anybody please help me think, are there any reasons or situations, when one should set parameters from setStateInformation? @fabian?
