Fastest batch output
-
Re: Pre-flighting After Effects projects for batch output
Hi! I’m trying to render 500 rows with some text layers and audio and i need to render them in 5 seconds each one o less.
I have a background layer and the dynamic layers only in the comp.
File duration is about 1 minute 20 secs, composition settings are 720p 25 frames per second. Now each file size is 44Mb (Quicktime, h264 codec, quality 70)
It’s very important for us to speed up the process because we have to release a lot of vids. Do you have any trick for that? It will be very helpful.
Thank you so much!
-
Hi There,
Apologies for the long delay here. We are on the cusp of releasing an update to Templater and needed some heads down time with the code
If you have pre rendered elements already setup, that’s a good first step! The less calculation that AE has to perform the faster it will speed through the frames. However, please note that the pre-rendered files you import to AE as layers are best saved as uncompressed files. Why? Because for every frame that AE reads in a compressed video file, it has to decode the compressed image before it can composite it—this slows down AE considerably. So, it saved a good deal of time to have AE skip any decoding. You might try to export as a PNG sequence or an uncompressed Quicktime.
This poses another problem—that of space on your drive. Since you have a 1:20 video, any pre-rendered element is likely to be HUGE if you store it as uncompressed video. So, just be sure you have enough space on your drive to handle a huge file like that.
The other factor that impacts speed is output resolution. In your output module, you can set it to render at half resolution so that AE doesn’t process an inordinate amount of pixels for every frame. Of course, you need to consider your final projection platform to really take this into consideration. If you are making mobile only, then rendering at half resolution can save you a considerable amount of time.
Another technique involves post-processing the output with a command line program like ffmpeg. In this case, you can render out segments of your master composition that have absolutley NO dynamic frames. That is, render out the frames that do not change and place them on your drive. Then, when running through the 500 rows, you can render out the segments that change. Finally, you can use a post-job event script to “stitch” or concatenate the pre-rendered video files with the dynamic output that Templater creates. This is an advanced technique, but you can see how to use ffmpeg with a NodeJS wrapper on our github repository. The catch here is that all the video files you stitch together must be created with the same output module out of AE. Otherwise, you will see visual artifacts that just aren’t desirable. In addition, if you want to have audio on the video, you’ll need to mix it in that ffmpeg process. FFmpeg is a very complex program and does require some level of expertise to use effectively.
Another way to handle speed is to have multiple machines with aerender installed on them. Then have Templater replicate the master comp with the “Send Replicates to Adobe Media Encoder” preference checked. This will effectively create an project file with a replica comp of the master comp. Use the post-job script to copy the project file to a machine that has aerender on it. Use aerender’s command line options to have it render out the replicated composition. The catch on this one is to make sure the machine running aerender has all drive and folder mappings exactly the same as on the machine that you created the template.
I know this is alot of information. I definitely want to make these techniques into a video, and that will likely come towards the end of the year.
Thanks for your patience with us as we grow Dataclay! Looking forward to hearing about your outcomes!