Why would HEVC decoding be slower than Legacy?

OneBuckFilms wrote on 6/25/2023, 5:38 PM

I noticed under Vegas Pro 19, as well as my Vegas Pro 20 installation that I can use Legacy HEVC decoding, and it seems to be less glitchy than the new one, perhaps processing faster.

Is there a reason this would be the case?

Just looking to see if my fellow VEGAS users might have an idea.

Comments

Former user wrote on 6/25/2023, 6:19 PM

Vegas has a poor implementation of GPU decoding, and it's worse with HEVC and worse again with HEVC 10bit.

The core problem appears to be not enough CPU resources are assigned to the GPU decoder, much of the time it seems to only be using 1 CPU core, You would have most likely seen low CPU use , low GPU use, and yet your video preview is lagging, and then you'd ask yourself why isn't the software using more resources to prevent the lagging. The reason, in part, is lack of proper multi-core CPU processing when GPU decoding.

When you turn on Legacy HEVC, depending on your file, Vegas then may be able to use multicore CPU decoding, and if you have enough CPU you may get a lag free experience. This is my interpretation of the problem, Vegas devs never comment, the worse thing about them not commenting is more ignorant helpers here have in the past convinced customers it was there hardware to blame, leading them to buy the most expensive computer system, and be in exactly the same position.

 

john_dennis wrote on 6/25/2023, 8:28 PM

@OneBuckFilms

You have not described your methodology.

I'll describe my experience.

HEVC Hardware Decode

Legacy HEVC without Hardware Decode

Legacy HEVC with Hardware Decode

Machine in my signature.

RogerS wrote on 6/25/2023, 9:23 PM

Legacy without and with hardware decode seem to use the iGPU in the same way for compute.

OneBuckFilms wrote on 6/25/2023, 9:37 PM

I observed that as well @RogerS.

GPU level looks about the same but the preview is much more jittery with the newer HEVC.

Legacy implementation deals with my iPhone 14 videos just fine, so I'll just use Legacy.

I'll try out any fixes if they are released.

Former user wrote on 6/25/2023, 10:09 PM

I observed that as well @RogerS.

GPU level looks about the same but the preview is much more jittery with the newer HEVC.

Legacy implementation deals with my iPhone 14 videos just fine, so I'll just use Legacy.

I'll try out any fixes if they are released.

This is iphone footage using new decoder(with GPU decode turned off) and with Legacy decoder (It is not a GPU decoder)

You can see the vast difference in Vegas's ability to use CPU. The GPU decode only goes so far, it still needs CPU and that's the problem

 

RogerS wrote on 6/25/2023, 10:22 PM

In general for HEVC and my Intel UHD770 iGPU I find the newer HEVC decoder is adequate to process it so keep legacy disabled. There is some media that works better with legacy, though.

I don't think the bottleneck is how VEGAS uses hardware decoding but the video engine it feeds into.

Former user wrote on 6/25/2023, 10:47 PM

@RogerS I just noticed the way the new HEVC GPU decoder works is different to the new AVC decoder. I just tried Iphone footage with GPU decoder on and actually it does use up to 70% CPU, turn of the GPU decoder in settings and Vegas is limited to decoding with a single core of CPU. That's not how it works with AVC, Vegas still has the ability to use all your CPU.

This is getting really confusing. So,

DO use HEVC SO4(new) GPU decoder

DO use HEVC Legacy where necessary

DO NOT use HEVC SO4(new) GPU decoder with GPU decoder turned off in settings.

DO use AVC SO4(new) GPU decoder

DO use AVC SO4(new) GPU decoder with GPU decoder turned off in settings.

DO use Legacy AVC decoder if you want to, but mostly there's no advantage to it over AVC SO4(new) decoder with GPU turned off, with the disadvantages of some formats not being compatible.

 

 

 

 

 

RogerS wrote on 6/25/2023, 10:55 PM

Thanks, this is valuable testing.

rock-c wrote on 6/26/2023, 3:36 AM

@Former user Can you test these footages with the free Capcut? https://www.capcut.com/tools/desktop-video-editor

Former user wrote on 6/26/2023, 4:48 AM

@rock-c Here ya go, 15% CPU with GPU decoding, 35% CPU with GPU decoding turned off. 4K60 project HEVC 10bit

That's the performance upgrade we could expect if Vegas got a brand new render engine. Capcut don't appear to have any interest in releasing a pro version, instead they're going to release a premium version with extra effects, but no ability to use OFX or VST plugins

*Looking at preview of non GPU decoded playback it looks like Capcut automatically changed preview mode from Quality to Performance, so not exactly an apples to apples comparison, it looks equivalent to Vegas's playback quality of 'Preview'

Howard-Vigorita wrote on 6/26/2023, 1:08 PM

Fwiw, I was getting faster renders checking legacy hevc with the uhd750 compared to unchecked on the 11900k. But both were slower than on the uhd630 with legacy hevc unchecked which was faster than checked on the 9900k cpu. That's why I subsequently put an Nvidia 1660ti into the 11900k machine which was faster decoding 420 hevc with legacy unchecked. Later swapped out the Nvidia for an Intel Arc a380 and subsequently added an Arc a770 which is fastest of all decoding with legacy hevc unchecked while adding 422 hevc decoding ability. Quality analysis did not change with decoding hardware swaps with legacy hevc checked. All that changed was performance and relative cpu/gpu utilization. I view the matching quality measurements like a decoder fingerprint. Utilization increases on Intel graphics when it's available and cpu utilization drops but remains higher than with legacy hevc unchecked. This suggests to me that Vegas is using a hybrid cpu/gpu Intel Runtime Library for legacy hevc.

Bottom line is that overall performance with legacy checked depends on the relative performance of the cpu and igpu.

Also, based on quality analysis of renders, legacy hevc decoding is still far and away delivering the highest quality compared to unchecking legacy hevc. When teamed with MainConcept render encoding, quality is a close 2nd to ffmpeg x265 transcodes.