Copy link to clipboard
Copied
I have a 30 fps video I want to export as a JPEG sequence, but I only want to export every 50th frame of the video. Do I have to do that manually, or is there a way to do that in a single render batch?
Thanks!
Copy link to clipboard
Copied
Copy link to clipboard
Copied
I'd import the sequence as 30 fps (which is AE's default), put it into a 0.6 frames/ sec comp, and render.
AE can do 29.97 & 59.94 fps, why not 0.6 fps?
Copy link to clipboard
Copied
Apply speed 5000%, export.
Not sure how PP will generate each individual frame at that speed though (eg might interpolate from one field, or blend multiple)
Copy link to clipboard
Copied
Simple and effective! Perfect solution, cheers!
Copy link to clipboard
Copied
Another option is to render to video and then use Photoshop (File>Import>Video Frames to Layers)
This gives you the option to limit the import to every Nth frame
Finally export each layer to a file, if required.
Copy link to clipboard
Copied
Every one of these solutions except is more work than you need to do. Even the "every Nth frame" expression from AE Enhancers suggested by Gutterfish is not going to give you an easy way to render every ninth frame. Dave's answer is closest to being right but AE's minimum frame rate is 1 so you can't set a frame rate of .6.
Here's the easiest solution to rendering every 50th frame in a 30 fps comp:
To overcome the 1fps minimum frame rate problem (30/50) you can easily change the timing by nesting the original comp in a new comp that is the same frame rate as the original. Step 2, change Time Display to frames (Ctrl/Cmnd + Click), start at frame 0, and enable time remapping or Layer>Time>Freese Frame from the menu. If you use Time Remapping delete the last keyframe, If you use Freeze Frame, change the hold keyframe to a standard keyframe. Now move forward 1 frame and type in the frame number you want (50). Add a loopOut("continue") expression and every 50th frame will now be the only frames that show up in the layer (nested comp). If the comp is all animation then everything will be smooth. If the comp contains footage then you will see every 50th frame and never have a blended frame as long as the interpreted frame rate for the footage matches the frame rate of the comp. All you have to do now is set the work area to the last visible frame for the layer and render.
Here is some further explanation. The frame rate of a comp does not change the time it takes to play a video, it changes the number of frames. All of the timing remains intact.
If you want to render every 9th frame in a 30 fps comp the solution is even easier because the frame rate divided by the frame number you want to render is greater than 1. Just open up the comp settings and type 30/9 for frame rate. AE will do the calculations and you will only see every 9th frame.
Both of these workflows are very easy to test. Start an animation in a 30 fps comp by creating a tall thin rectangle, set a rotation keyframe at frame 0, move forward 9 frames, and set the rotation to 90º. To keep the animation going add the loopOut("continue") expression to Rotation. Open up the comp settings and type 30/9 in the frame rate to change it to 3.3333 fps. The duration of the comp in seconds will not change but the layer will still rotate at exactly the same speed, but you will only ever see every ninth frame.
This also works in the opposite direction. Create a new comp that is 30 or 60 or even 300 frames per second and drop your 3.33333 fps comp in the new comp and check the movement and timing of the comp. As long as Preserve frame rate when nested is not checked, you will see all of the in-between frames of the layer rotating because the timing of the comp will not change, only the number of frames. This will give you blended frames with footage, but all animation and keyframe timing will be correct.
Most people do not have the correct understanding of frame rates and timing. Change the frame rate of footage and you change the time it takes for the footage to playback but you do not change the number of frames. Change the frame rate of a comp (or a sequence in Premiere Pro) and you do not change the time it takes to playback, you only change the number of frames in the comp.
Copy link to clipboard
Copied
The easier solution to this would be to actually export all of the frames and then write python script to filter out every Nth frame. I know that does not seem that easy, but it is much easier than you think and it is easy to find info on how to do it, or find a friend who will do this for you in 10 minutes.
Copy link to clipboard
Copied
Thanks for this solution. I'll skip Python and select each 10th frame into a new folder. 🙂 Cheers