Frame rate, Frame range, Step AND Time Stretching? Please educate me

Hi, when I need more frames (more temporal resolution) but to keep the animation length in After Effects, I just increase framerate.

But Blender has too many interlocking concepts for me to understand, probably because it’s frame-based and not time-based.

My animation is, say, 250 frames, in 25 fps=10s. How do I get 10s of animation but with 50 fps? Just increasing the frame rate speeds up the animation playback rate, but why? That’s not FPS!

I tried to set framerate to 50fps, Time Stretching to 200 and double the frame range as per some tutorials, but the motion is still exactly the same. I was expecting half the increments (as should be) but nope.

What throws me off that Blender doesn’t change the frame numbers on the timeline, nor the actual steps. When I set, say, 5 fps, the timeline is still exactly the same, with the same increments.

And how do “Steps” factor in this? I really can’t wrap my head around this. I can figure out how o do this in AE and Unreal but not in Blender.

I looked up the documentation but it’s sparse to the point of being useless in this case, even mislabeling the feature (it’s Time Stretching in 3.1, not Time Remapping). Please help, thanks.

What you are describing here should be working, what type of animation are you trying to stretch? cached sims might have issues with time stretching.

It’s a super simple animation with just a couple of keyframes on locations and scales. Basically a couple of boxes and some tubes between them. No physics or simulations.

Is the behavior different when working in the Video Sequencer? I’d like to put multiple camera views onto a timeline to get sort of a batch render. That is working as intended but I fail to set it up properly so I have proper 50fps (so, smaller deltas between frames=more temporal resolution). What the Video Sequencer outputs with 25fps, 100 New Time Stretch and 250 frames is exactly the same as what it outputs with 50fps, 200 New Time Stretch and 500 frames.

Yeah, I’ve had issues with the sequencer doing weird things. Something that might help is using a speed control effect on your scene strips. then you can set the speed of the strip to whatever you need it to be, and the timeline of your VSE can be whatever it needs to be.

Not ideal, but it’s something? I’m not an expert in this area, so take my advice with a grain of salt.

Hello !

Yes, blender is frame based, a 50 image animation played at 25fps means two second of animation.
If you switch to 50fps the animation last 1second, but it stays 50 images long.

Fps means Frame Per Seconds , and that’s what blender is doing here.

I think also that when you import a video blender stay frame based, so a video of 50 images at 50fps, on a 25 fps timeline will be played at 25fps and will last 2 seconds. I’m not completely sure, but for a long time it was the case. After is more editing oriented so it convert the FPS to match the current timeline. Blender is an animation software, everything should be conformed to a particular FPS .

Try to avoid time stretching, it’s really something that you should do if there isn’t any hopes left. Or to convert a 25fps animated shot to 30fps. IIRC the animation stay the same, but you have to extend the timeline and at render you’ll get your animation retimed. But because blender’s timeline and what you render is different it gets really confusing quickly.

The best way to do time remap is to scale the keyframes.
So you’ve got a 50 image animation at 25fps, you want to switch to 50fps.
You set the timeline to 100 images, fps to 50, select all the keyframe of the animation and scale it so it fits the 100 frame range.
Obviously, that’s not something you should do in general, it’s better to animate at the right fps from the start.

The Step is something really different and not really related to time management. If you have a long shot ( 300 frames) to render with long render times and a lot of things going on, you can set the step to 30 and it will render frames 0, 30, 60, 90 … so you can check these and if they are ok you launch the final. The frame number stay the same, so at step 30 you don’t get frame number like 1,2,3,4,5, but image_0030.png, image_0060.png. There isn’t many uses of Steps beside that.

Once again, try to avoid that , it’s confusing and you’ll be safer by scaling the keyframes and always stick to the final FPS meant for delivery.

AE is quite flexible for time remapping and mixing varying movies files with different FPS, don’t try similar things in blender it’s really not meant for that. Even if some things are possible, for AE this is business as usual, for blender it’s getting to the boundaries of it’s abilities.

Try to have everything with the same framerate, and if you really need different FPS output, the simpler would be to work with the higher fps and retime in AE. At least for a starter.
VSE as a speed filter so you can do some speedup, but I advice you to do it with rendered images.
Don’t try to apply AE’s retiming logic to blender, that will lead only to sadness, and baby cats will die for sure…

Once everything here is perfectly understand , in a few week/mounts you can start to look into the very confusing Time Stretching if you feel the need. But that should be a last process, when you need to retime a finished shot and you don’t have the time to scale all the keyframes.

Hope that helps !

Good luck !

2 Likes

Thank you. Scaling keyframes seems like a very error-prone operation, God knows what can be left out where… It’s a really suboptimal workflow, something Blender has to eventually improve. FPS has to be constant in time, otherwise it’s not frames per second, but X frames per Y seconds, a meaningless metric.

1 Like

Hum, I see what you mean but :

Yes, it’s the same when you do retiming, the animation is stretched and you loose the precise keyframing done by animators. That’s why you should avoid it in the first place. I don’t know how game engine manage that, but in animation we set a fps for the project from the start and stick to it.

Yes, by default it’s constant if you enable frame dropping option :


But yes, if the scene is too complex then framerate start to drop, and you’ll play at like 22/ 18/ 12fps rather than 25, but the timing will stay the same : 1 second animation stay 1 second.
But at 12 fps the playback will drop one frame every two frames.

With that nothing can be done even with all the possible optimization, with a few characters in a shot, a set , animated props, you probably won’t get 25fps playback.
Animators tries to manage with framedrop and render playblasts to check their work at 25fps. It’s the same with every 3D software on every animation projects. I don’t know the specifics of game workflow.

1 Like

This is a rather simple mograph-type animation. I want to have more flexibility for timing when editing, that’s it. Basically made the movements too fast :slight_smile: That’s why I want higher framerate - but mainly to have options.

1 Like

check out the speed control effect strip. There are a number of modes for how to control the effect, but my favorite is “frame number” you can then keyframe the frame number in the VSE, allowing you to speed up and slow down an animation, you can even control acceleration/deceleration. It’s much more robust than the time stretching option, and you can throw it on a meta strip to adjust everything at once.

2 Likes

Thank you! Control Strips look like the solution here.

Ok ! If the idea is to fix your animation right now and you don’t plan working on it too much, then maybe Time stretching could be the option.
if your animation is 50 frames and you want it to be 200, enter 50 in the time stretch Old, and 200 in the new. Then render that and do non-linear retiming in After if needed.

If that’s about finding a good general workflow in blender, I think it’s much better to try to get the timing right from the start and avoid retiming tricks at all cost. Keep simple keyframes that you can easily move in the dopesheet, and once that starts to look good you may add more keyframes and build upon a good basis. It may sounds restrictive but it’s way simpler to manage in the long run.
At least it’s how people generally do it with 3D softwares.

1 Like

Definitely, I undestand all of that. I just want to get more frames for possible retiming in this case.

1 Like

How would you guys approach the following exercise:
Target fps for an animation is 60fps, so I do all keyframing with this setting from the beginning.
It would be wise to decrease fps for rendering samples or drafts to 30 or even 24 fps though, especially if the animation is long. Both time stretching and scaling of all keyframes are equally inconvenient to my opinion, so it doesn’t really matter which one of these two I use, however I got another puzzle, which is baked particles simulation. Is there a way to scale or re-time it as well?
I used to re-bake everything from scratch so far, but maybe there are better practices? Please advice.