Recently, David asked:
“When exporting media, would ProRes 422 have a speed advantage over ProRes 422 LT?”
I was fascinated by this question, because I haven’t look at the speed differences between different versions of ProRes before.
However, I need to break this into two parts:
THOUGHTS ON OUTPUT
Where possible, I always recommend exporting a master file at the highest quality possible. It is easy to convert a high-quality file into something smaller. It is impossible to convert a small file into high-quality.
The only exception to this rule is when getting a clip posted quickly is more important than quality. In which case, export a compressed file – H.264 or HEVC – and post that. However, as soon as possible after you get your story posted, go back and export a high-quality master file and save that for the future. Just in case…
Even though using a lower quality codec as the final export of a master file doesn’t make sense, there’s still a great deal of value in David’s question!
Since we can change render settings at any time, wouldn’t it be cool if we could choose a codec that renders faster for initial editing, then switch to a high-quality codec just before final output?
So, for this article, I wanted to see what the speed differences were between the different ProRes render options in Apple Final Cut Pro X. And, truthfully, the results surprised me!
A SIDE NOTE ON ADOBE PREMIERE PRO CC 2019
I originally planned to compare render speeds between FCP X and Premiere. But, as I got into my tests, I realized that would be like comparing oranges to ducks. They each approach rendering from a different point of view.
There’s no “right” approach – but it is important to know the differences.
NOTE: Here’s an article comparing export speeds using different ProRes codecs in Premiere.
Before we launch into the tests, let’s define a few terms:
By default, render files are stored in the Library, though you can change their storage location using Library > Properties.
NOTE: Here’s a video that explains how.
Faster CPUs and/or multiple cores will render faster. Faster GPUs may render faster, depending upon the codec; ProRes takes advantage of the GPU. However, faster CPUs or GPUs don’t achieve greater quality, just greater speed.
For these tests, I’m using a 2017 27″ iMac. Different computers will render at different speeds, so, in these tests, look at the relationships between render speeds, not the actual speed itself.
All files were stored to the internal SSD, here’s the speed of my storage. (As you’ll discover, rendering does not max out the speed available from the SSD, which means that this storage bandwidth is more than sufficient.)
For a source file, I took one of my recent webinar masters:
To this I applied a single effect: scaling the entire image 50%. This forced FCP X to render the project. All tests were run with the same file, with the same effect. I deleted render files between tests.
NOTE: Applying more, or different, effects will require different render times. Scaling renders reasonably quickly, which is why I picked it.
One last note. Render speeds slow down when FCP X is not the foreground application or when the computer is doing other work. For these tests, I left FCP X as the foreground application and avoided doing other work with the computer. (I, ah, read a book…)
Here are the results:
This computer only had 8 GB of RAM, however during rendering for ALL versions of ProRes, rendering was easily handled within 8 GB of RAM.
The CPU was fully occupied.
You never want the CPU to be 100% occupied, some reserve is necessary to respond to mouse and keyboard actions.
The GPU was fully involved most of the time. Note the fall-off at the end, we’ll talk more about this below.
Final Cut transferred data from storage between 125 – 150 MB/second. Because it needed to process (i.e. calculate) the data in the file, it transfers data more slowly than if it were simply copying the file. In this screen shot, it is reading ProRes 4444 source files and created ProRes 422 LT.
WHAT DOES ALL THIS MEAN?
Final Cut supports these codecs for rendering. I thought that the more compressed files – such as ProRes 422 LT – would render more quickly than larger formats.
But, as you can see from my tests, that really isn’t the case. In fact, every time I ran these tests, rendering took a different amount of time! This points out a key fact: render speed is dependent on what else your computer is doing at the time. While I tried to not run any other applications, the computer is ALWAYS doing something in the background.
There really isn’t a whole lot of difference between the three ProRes 422 codecs. The first time I ran this test, they were within eight seconds of each other.
ProRes 4444 takes roughly 17% longer to render than any of the three ProRes 422 codecs, I found this longer time to be consistent between tests.
Another trait I noticed in EVERY test was that as Final Cut got within 85% of completion, it slowed down. Rendering from 45-50% took 20 seconds. Rendering from 95-100% took 45 seconds. You can clearly see the slowdown in the GPU chart above, it started right at 85%. It is also visible in the CPU chart, though I don’t have a screen shot of it.
NOTE: While ProRes 422 LT, 422 and 4444 all slowed at 85%, ProRes 422 HQ consistently slowed at 70%. I don’t know why.
Also, while the three ProRes 422 codecs maxed out the CPU at 95-97%, rendering ProRes 4444 only pushed the CPU to 75% of capacity. Again, I don’t know why.
So, what can we learn from this?
NOTE: To get rid of unneeded render files, select the Project or Event you want to clean up, then choose File > Delete Generated Event Files. Then, choose Delete Render Files. If you delete the wrong files, don’t panic. FCP will simply recreate them.
I found this exercise fascinating, because the results were not what I expected. If you have plenty of storage space, render in whatever codec you prefer. If storage space is tight, render in ProRes 422 or 422 LT.
But, in practical terms, there won’t be any significant difference in speed.
NEW & Updated!
Edit smarter with Larry’s latest training, all available in our store.