Forum Replies Created

Page 1 of 7
  • Patrick Grossien

    March 3, 2026 at 12:23 pm in reply to: HOLD a keyframe in FCPX?

    PS. The same as “constant” in motion…

  • Patrick Grossien

    March 3, 2026 at 11:34 am in reply to: HOLD a keyframe in FCPX?

    @bbalser What Laurie tried to explain is the situation where the keyframe can be changed into a “hold” keyframe (as in: hold value). In AE and Premiere, a hold keyframe keeps its value exactly the same until the next keyframe, eliminating the transition between them. The value stays frozen and then jumps instantly to the new value. These keyframes are not diamond shaped in AE but square.

    I also have been looking for an answer to this and even in 2026 haven’t found one yet. It seems that this is still not possible. Although I am a strong FCPX supporter, there are some simple aspects it’s still lacking which leave me completely puzzled as to why they have never been implemented. And since there hasn’t been an update to this I just wanted to at least add the standard work around method for this use case, if ever there’s anybody else looking for it.

    Copy the keyframe you want to hold and paste it just a frame before the next one.

  • Thank you very much, John. Very much appreciated!

    As this is not ending up as a singular element, I am trying to solve this with as little key framing as possible. That’s why I am trying to find a solution that targets the copies directly. But if not, I’ll need to resort to masking or other key framing solutions.

  • That was perfect and totally what I intended in the beginning. The extending both ways part came later when I realized it could be extremely practical.

    Thank you so so much for all your help – past, present and future 🙂

  • If I may follow up on this, could you – or someone else who can – explain to me the modulo operation? I still am not sure if I can wrap my head around it.

    t = time%key(numKeys).time;

    Let me try though:

    – take the duration spanning all keyframes of the current property:

    key(numKeys).time

    – let “t” loop from 0 to x in time increments every time the above keyframe duration fitted into “time”.

    So if I have keyframes ranging over 2 seconds, at 2:01 “t” will start to count from 0 to 2 in the same way as “time” would and do that over and over again.

    Is this correct? At least that would make sense to me, I guess 😂

  • It works like a charm! Thank you so, so much, Dan!

  • Weird. Further trying to extend the possibilities I tried to also place the same script into the “end trim” parameter. But there the value of keys 1 and 2 is changed to the value of the script result and key #3 gets the value of keys 1 and 2. So it seems to be offset!? But even changing the key(#) values never returns the correct result… so weird. but why? 😂

    But I’ll just try to skip this for now….

  • If easily possible, yes.

    Of course it’s possible to offset them to the left and out of sight, but this way it would be clearer to see what’s happening. Didn’t think about it at first but quickly changed the loopOut to loopIn and Out

  • If I may further ask for your assistance, is there a way to modify it so it also does a loopIn as this would further make randomizing easier? trying to still wrap my head around the modulo in this instance.

  • Now if I manage to use the expression function of the “flow” plugin alongside it instead of linear or ease, this will be amazing. I guess I badly need to enhance my coding skills in some way.

Page 1 of 7

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy