Fastest Export Method? CPU or GPU?

In a recent project, I had a 4k60 uhd project with 21 clips in ProRes, and the final result was a 22 min video in 4k60 H.264/AAC MP4. The 1st couple of times I used hardware encoder (via VAAPI with AMD RX6700XT) and the export took 1hr 47 minutes. I had to do this a couple of times due to some issue I was having with the rich text filter with similar results.

Today, just for comparison, I tried to do the same exact export except I unchecked “Use hardware encoder”. The system is a Dual Xeon E5-2680v4. The export without hardware encoder took almost exactly 1 hour (and a few seconds). So it would seem in this case, CPU export seems faster.

In the past, I always had faster exports with GPU, but back then I was working with different formats, export 1080p60, and source clips were H.264 (not ProRes), and GPU was Nvidia 1080TI nvenc. Is the difference here because of the GPU? Or because of ProRes vs H.264? Or because my projects are now 4k60 UHD?

Uncompressed 4K60 is a lot of data to transfer from CPU RAM to GPU RAM for the sole purpose of encoding, and x264 is fast. If you had exported as HEVC you would likely notice a difference because x265 is fast for what it is but much slower than x264. Besides that, AMD encoding is fairly poor quality relative to its nvidia or software counterparts; so, you’re not losing much by avoiding it.

3 Likes

Hmmm… to add a little bit more info here. I just noticed the file output from AMD/GPU/VAAPI vs CPU export is drastically different in size: 10.2GB (AMD/VAAPI) vs 2.6GB (CPU) and this is with same export settings other than encoder choice.

what’s going on here?

Quality % does not mean the same thing to each implementation of a codec. Quite likely that increased size makes up for the lesser quality of AMD.

1 Like

The file size also depends on the preset in which ffmpeg encodes the video. I encode using the QSV (intel) hardware codec, but by default, shotcut prescribes preset-fast, but I always rename it to preset-veryslow, after which the file is encoded a little slower, but its size is noticeably smaller.

This topic was automatically closed after 90 days. New replies are no longer allowed.