Effects: Temporal - Speed. Doesn't like cuts in the video

Palacono
Palacono Posts: 3,423 Enthusiast
edited March 2015 in Post-production techniques

This works the same in HF 2 Express as HF 3 Pro, so it's obviously not seen as a bug in any way, but the way it works is confusing me, as it's not doing what I hoped/expected, nor can I work out what it is doing.

If I set Speed change keyframes on a single clip, it behaves more or less as expected; although it then loses sync with the sound, which remains at the normal speed; but when I slice a clip: all bets are off.

If I slice between two keyframes, not only does the last frame before the cut change, but the first frame of the next section isn't even close to the right one. So doing a cutaway to another shot, then coming back where you left off isn't possible. Multiple cuts confuse it even more, where if I apply a speed change to some sections in the middle they can be ignored entirely, no matter what value I put in there.

What I was expecting it to do was create two extra keyframes of the correct speed to the last and first frames of the sections either side of the cut and also maintain the correct frame numbers. It doesn't do that and what it does do is unpredictable (to me, anyway), so...suggestions?

Comments

  • chibi
    chibi Posts: 257 Just Starting Out

    Temporal speed could use a lot of improvements.
    The clip with temporal speed added should reflect the "time" occupied on the timeline. As of now any clip with temporal speed needs to be on another clip layer because it skews the sequence of the timeline if the clip is in between any other clips. Its also guesswork to know where the end frame of a clip is when temporal speed is added.

    In vegas when you speed up or down a clip the actual space it occupies in the timeline adjusts accordingly to how much time it actually is.

  • Palacono
    Palacono Posts: 3,423 Enthusiast

    Yes, I nearly added something like this to my post too, but then I thought:
    "What happens when I set the speed to negative?" and "How large would a 10 second clip stretch to when I reduce it to 0.1 speed?" and "How small would a 10 second clip be if I speed it up 100 times"?

    I can see how with Hitfilm's versatility: making it scale accordingly could cause issues - which is why many programs that do that on the timeline only allow you something like +/-5 times the speed to stop the timeline going completely out of whack.

  • chibi
    chibi Posts: 257 Just Starting Out

    "What happens when I set the speed to negative?" and "How large would a 10 second clip stretch to when I reduce it to 0.1 speed?" and "How small would a 10 second clip be if I speed it up 100 times"?

    Not sure about negative. Wouldn't that essentially be a time reverse?
    I don't mind having a clip that becomes longer in the timeline when re timed at 0.1 speed because that's how it would play in reality. Same for a clip that becomes shorter because its sped up 100 times. Atleast you have an exact indication of where your clip starts and ends in the timeline when you change its speed. In HF you're guessing where the clip has its new endpoints after changing the speed and again you have to put these clips on another layer stack. Not so with vegas.

  • SimonKJones
    SimonKJones Posts: 4,448 Enthusiast

    The speed effect does work in a logical manner and shouldn't require guesswork as to its end point. eg, if you apply a 2x speed, the final frame from the applied clip will be halfway through the clip object on the timeline (because it's playing at double speed).

    The key thing is that the speed effect works like other effects in HitFilm, applying specifically to the clip/layer object's contents  on the timeline. It's not the same as, say rate stretch in Premiere. This makes HitFilm's speed less intuitive but it does work as intended.

    On a related note, I absolutely would like to see a full rate stretch feature implemented in a future version of HF. :)

  • Palacono
    Palacono Posts: 3,423 Enthusiast
    edited March 2015

    Thanks for replying - I was just posting how it would be nice if some staff could join in on a few posts, when I saw the notification :) - but my initial post wasn't about that.

    It was about the behaviour when you slice a clip that's got varying speed changes in it. That doesn't just require guesswork, you need to be psychic to know what the clip will play like.

    So, take a short clip, set speed at one end to 1.0 and 0.5 at the other and cut in the middle. Result? Anyone's guess. Cut it again: Yikes! Change the speed again of the middle section: Ignored. :(

  • SimonKJones
    SimonKJones Posts: 4,448 Enthusiast

    The reason that happens is that the speed effect applies directly to the contents of the clip.

    So let's say you have a 100 frame clip on a 25fps timeline. This be default will take 4 seconds to play out. Then you apply a 2x speed change, which results in those 100 frames being sped up and playing out in 2 seconds instead. Crucially, the speed effect is being applied to those specific 100 frames.

    If you then cut the clip, the speed effect will then apply to the resulting clips. So if you cut halfway through the clip, say, the speed effect on the first clip will now by applying a 2x speed change to frames 1-50 (the original 100 frame clip no longer exists, so the speed effect is now being applied to a 50 frames clip). The result of that will be that those 50 frames (two seconds of normal play time) will play out over 1 second.

    Not massively intuitive but it does make logical sense, once you get your head around it.

    Now, if you want to apply some speed changes and then be able to cut the altered clip without causing changes to the speed effect, the best thing to do is put the clip inside a composite shot, apply the speed effect to the layer in the comp, and then back on the Editor sequence you can edit with the resulting re-timed composite shot clip as normal, without affecting the speed adjustment.

    Hope that helps - it took me a while to wrap my head around it, too.

  • Palacono
    Palacono Posts: 3,423 Enthusiast
    edited March 2015

    Ah, that's certainly logical, just undocumented. :)

    So, while I can see how a single 2x speed change only applies to the remaining frames in a clip that's been sliced, it's harder to predict what the results would be with multiple keyframes and slicing between them.

    Take a 100 frame clip with x2 at frame 1 and x5 at frame 100 and cut it in the middle.

    From your example, I'd have to assume that the 2nd keyframe (x5) is now ignored, as it is no longer on the first part of the clip, so the 2x keyframe is simply applied to the whole first part of the clip from frames 1-50 and the speed doesn't increase, simply stays at x2 the whole time. And possibly the 2nd clip section - having had the x2 removed - drops back to x1 at the start and therefore starts at frame 51 and then applies a x1 to x5 speed ramp over the remaining 50 frames.

    If that's how it works: that's logical enough; although doing the maths to predict where that second clip will decide to start, based on where you cut it in a variable x2>x5 ramp of the entire original clip is pretty tricky.

    But I did find that if I did the equivalent of your example above with a clip and cut it at frames 33 and 66 (for example) then the centre section seemed to be stuck in limbo and whatever speed changes I applied to it were ignored.  As the original keyframes are also still visible on the timeline of the first section - even though there is no clip to apply them to - I wonder if they were still having some effect.

    I'll have to experiment with something showing a frame timer on the screen to show you what I mean.

    Or, as in your suggestion, just cut it in the Editor. :)

  • chibi
    chibi Posts: 257 Just Starting Out
    edited April 2015

    @Simon, but you can't snap to the halfway point or the "new end" of the clip when speed is added. And that extra clip with nothing but black takes up space on the timeline. You really have to put that clip with speed to another layer. Problems already mentioned are cutting clips is unintuitive and no snapping with this new clip with speed added and the need to put it to another layer or make it a composite shot which is just extra things to keep track of.
    Just try the vegas way its much better. Assimilate the good things other products have.

  • Triem23
    Triem23 Posts: 20,507 Ambassador

    Have to agree with Chibi. If you have Vegas, Vegas handles vari-speed effects much better. Do your speed ramps in Vegas and render it out to import to Hitfilm for Hitfilm's superior compositing. 

  • Wildmax
    Wildmax Posts: 1
    edited April 2015

    I am trying to add the Temporal speed effect to the video using HF2U. When I keyframe the effect for the few seconds I want it, it slows the whole video. Is this a bug or "feature" I need to work around?

  • Is there a feature request for this issue of the speed modification not affecting the clip length in the editor? I do quite a bit of clip speed-up and this is by far the single most annoying aspect of using HitFilm right now. It makes it very annoying to line up other clips and snap them properly. 

    Perhaps instead of this being an effect, it would work better as a Clip Property?

  • Triem23
    Triem23 Posts: 20,507 Ambassador

    @Ziflin You're obviously on Hitfilm 3 Express. Hitfilm 4 Pro has a new Rate Stretch tool that lets you directly drag the endpoint of a clip and the speed will autmatically adjust.

    The Speed effect in HF 3 Express isn't really designed to work on the editor timeline. You're better to put the effected clip into a composite shot. Then add the Speed effect to the embedded Comp, then adjust the end point.

    Or, if you don't need ramping, just right-click the clip in the media pool and change it's FPS. This will effect every instance in the project (so if you need one at normal speed and one at half speed, duplicate the clip and change one of them to your slo-motion.)

  • FXhomer84421
    FXhomer84421 Posts: 2 Just Starting Out

    I read the comments above but the don't explain the following to me:

    I import an image sequence of a rotatin object with 70 images and keyframe the speed.

    until first 30 frames speed = 1.00, after that the speed shall drop to 0.00 , when the last frame is reached.

    The speed shall change smoothly.

    I set the 1.00 speed keyframe at the 30th frame of the sequence (which is a second in a 30fps clip).

    The 0.00 speed keyframe is placed to the last frame of the sequence,.

    What hapens now is: there are some frames cut away: I can see that, because the rotation is not smooth, when I just add the 70 th frame of the sequence as a png in order to create a static immage.

    The aim is to slow down the ratating objet in the image sequence and then just show the last frame.

    How shall I place the kexframes in order to get nothing cut away?

  • CleverTagline
    CleverTagline Posts: 3,327 Ambassador

    @Larsn Have you done a RAM preview to confirm that there are missing frames, or are you just hitting the Play button and watching what HitFilm can do in real time?  HitFilm can't always render all effects (even speed changes) in real time, and sometimes skips frames during playback as a result. However, if you RAM preview a given section, that section will play every frame guaranteed, at least until you change something in one of the layers and it removes the preview.

  • Triem23
    Triem23 Posts: 20,507 Ambassador

    @jsbarret I'm thinking it might not be a RAM preview or playback issue but the speed ramp. He's ramping a 30 fps sequence down to 0% speed over a period of time. Once that reduces playback to under 50% stutter frames are going to be noticeable. Additionally, he's not seeing all frames of his animation, but I'm about to discuss that.

    @Larsn

    The Speed effect is counter-intuitive (but is logical), because it's an EFFECT, therefore comes at a certain place in order of operations.

    OK, you have a 70-frame sequence. When you add this layer to your timeline this means you have 70 frames defined as "display frames" for the clip. Period. Because the Speed effect IS an effect it will not change the amount of display frames frames allocated in the clip. That is defined BEFORE the effect is applied, therefore It's always going to be 70 frames. Since you're slowing down the video this means you're running out of allocated display frames before you're running out of animation frames.

    Here's what you want to do: You want to place the sequence you want to slow down into it's own Composite Shot. Look for the Settings Cog/Gear icon at the lower left of the viewer and make your Composite Shot much longer. How long to you want to hold your freeze frame? The point is this Composite Shot need to be AT LEAST the duration that you want your final clip to display. Let's say you want your freeze frame to hold for ten seconds... Ok, normal speed for 1 second, slow down over 1.33 seconds, hold for 10 seconds. This comp shot needs to be at least 12 seconds and 10 frames. Make it 13. What the heck.

    REMOVE THE SPEED EFFECT FROM THE IMAGE SEQUENCE.

    Drag this 13 second Composite Shot with the Image Sequence into another image sequence. Now you'll have 390 display frames (13 seconds) to play with.

    Drag the Speed Effect to the Composite Shot and set your keyframes.

    You'll have to adjust your 0% Speed keyframe a few times. The problem here is as you slow down the animation your rendered frames now last LONGER than one frame. Your 0% speed keyframe isn't going to hit where you think it is. You're just going to have to play around until you hit what you want. You CANNOT slow 40 frames to 0% speed over 40 frames and have everything line up. It's impossible. It will actually probably take closer to 60 or 80 frames to hit a full stop on the last frame.

    I'd probably do this ramp in three stages. The first is a straight video clip of the first 30 animation frames.

    The second would be just the last 40 animation frames. This I would convert into a Composite Shot, make it about five seconds long, start my keyframe slowdown on frame 0 and adjust until I hit the correct slowdown.

    The third would be just cutting straight to the last frame as the original image from the sequence (PNG?). That way I'd only be dealing with the slightly annoying speed effect for the actual frames of the ramp. Also, it's easier for Hitfilm to just display a picture than calculate a 0% Speed video, so I'll get better editor and render response.

    Hope this helps.

  • FXhomer84421
    FXhomer84421 Posts: 2 Just Starting Out

    Yeah, all frames of my image sequence are displayed now. I put the image sequence in a compositive shot. This compositive shot got the speed change effect and of course I had to play around to fit the fixed frame to the right position. I tried it before, but I made a mistake I can not reproduce any more.

    Anyway, its working. Thank you all for your help!

    And of course the image sequnce can not be again 70 frames long when I adapt a speed change effect.

     

     

     

  • Triem23
    Triem23 Posts: 20,507 Ambassador

    Check it out, it can! 

    Ok, ugh, someone else may come along with a different workflow. I considered three, but one, I don't know if it'll work, one is complex. 

    This solution is brute force, but it works. Ok, we're taking the Composite you did your speed keyframes on and making sure it's in its own Composite Shot. 

    Drag THIS into another Composite Shot or Editor Timeline. Now you can use the Rate Stretch tool to make the overall length 70 frames. This means your initial spin will be faster, but it's about the only way to get the entire sequence to 70 frames without going back and recalculating the whole thing. 

     

  • Cervier
    Cervier Posts: 156 Just Starting Out

    It would be MUCH easier if the speed effect recalculated "on the fly" the overall length of the clip, as well as the "local" one, in the same fashion (just more refined) as the speed "transform" works on the edit timeline. The way it is currently makes it, as Triem23 wrote, "counter-intuitive", or, in words closer to what I feel today, a "frustration-and-headache-generator".

    The "least-bad" way I have found is to put the clip on the edtor's timeline, set the speed to the lowaest rate I expect to use (to make sure the comp will be long enough), then make a comp and fiddle, with the drawback I can't see how the changes affect the duration (I can't see where the end of the clip/last frame is). The fact that "normal" playing the clip (by pressing the space bar or the "play" button) doesn't show the changes in speed doesn't help to set the keyframes where I would like them to be! It's a good things that at least scrubbing allows that.

    I love HF for most of the rest and am really impressed at how it's improving and catching on with the competition, even doing better in a few areas. But that speed effect that I had to use today for the first time, really got me mad... Sorry...