It's not clear to me what is legal for an LV2 plugin to do with an input control port. Once the input port has been read, is it acceptable to use that location in memory as temporary storage in the "run" method? Is it the host's responsibility to re-fill the value of the parameter before every run call? Is it the plugin's responsibility to keep input-ports bit-exactly the same?
What about transformations of the input which leave the value logically the same? For example, normalizing boolean inputs the values 0 and 1?
The documentation is silent on this matter.
Jeremy