Pauses every 60 frames when encoding HEVC (nvenc)

Former user wrote on 6/16/2018, 6:38 PM

Hi, I've been noticing this constant pausing approx every 60frames, using HEVC(nvenc) & wondering if there is a solution to it, or if someone could tell me the cause. Note this is a very minor complaint, but cumulatively during a long encode the pauses could add up to a large percentage of encode time so if there is simple solution that would be great.

my cpu is approx 45-50% and gpu 10%. no spikes in gpu/cpu use, cpu and gpu barely warm. Video is input is 30fps 720p AVC

I'll upload an example, mute the un-intended audio. Do others experience the same with HEVC or vegas in general as far as the pausing during rendering? Thankyou.

 

Comments

Musicvid wrote on 6/16/2018, 6:47 PM

Bob, they are called hardware buffers, and they will be with us forever, sorry to say.

BruceUSA wrote on 6/16/2018, 7:14 PM

Bob, they are called hardware buffers, and they will be with us forever, sorry to say.

Well, I don't have that problem with my hardware, AMD VCE hevc. My hardware zipping it thru fast, 1080P and 4K, no problem here. The only problem I have right now is that the rendered footage can not be re-import into Vegas. Will freeze when doing so. The thing I don't quite understand is that Vegas can create the file and can not read the file?. Sorry to bring this up on this thread. I have started a thread of it own.

Last changed by BruceUSA on 6/16/2018, 7:14 PM, changed a total of 1 times.

CPU:  i9 Core Ultra 285K OCed @5.6Ghz  
MBO: MSI Z890 MEG ACE Gaming Wifi 7 10G Super Lan, thunderbolt 4
RAM: 48GB RGB DDR5 8200mhz
GPU: NVidia RTX 5080 16GB Triple fan OCed 3100mhz, Bandwidth 1152 GB/s     
NVMe: 2TB T705 Gen5 OS, 4TB Gen4 storage
MSI PSU 1250W. OS: Windows 11 Pro. Custom built hard tube watercooling

 

                                   

                 

               

 

Former user wrote on 6/16/2018, 7:15 PM

In preferences is it possible to increase the buffer without increasing the pause time and so as example maybe it can render 500frames, pause, 500frames etc, instead of 60frames, pause, 60 ?

This input file also only 3500kbit/s . so really not alot of data moving about.

 

edit. Interesting to hear Bruce. so maybe I can have pause free rendering

Musicvid wrote on 6/16/2018, 8:44 PM

Ok Bruce, your hardware encoder is fast enough to keep up with the pipeline stream. Congratulations.

Musicvid wrote on 6/16/2018, 8:56 PM

You have a big tank of water with a spout on the bottom. There are three, and only three possibilities.

1. The hose filling the tank keeps up with the outflow exactly. This, of course, has a statistical probability of zero.

2. The hose doesn't quite keep up. Therefore, the outflow stops and waits periodically, until the fill reaches a certain level, preventing buffer underflow.

3. The hose fills at a faster rate than the outflow. Therefore, the supply is interrupted periodically, preventing buffer overflow.

Either way, the buffer (volume of water, more precisely flow potential) matches the slowest bottleneck in the chain because it has to. Therefore, slowing down the bigger potential output accomplishes ... exactly nothing.

To generalize or mount a predictive model based on one machine with one encoder in it's own unique environment is, of course, ridiculous.

So Bob, your encoder is already running at maximum efficiency, unless you find a way to widen the bottleneck a little; even if the buffer controls were exposed as in x264, the only thing you could physically accomplish is to slow encoding down even further.

I hope a few people are beginning to get the analogy after having repeated it so many times -- the tail doesn't wag the dog, except on Saturday morning teevee.

​​​

Red Prince wrote on 6/16/2018, 10:20 PM

Very good analogy, Musicvid! 👍

He who knows does not speak; he who speaks does not know.
                    — Lao Tze in Tao Te Ching

Can you imagine the silence if everyone only said what he knows?
                    — Karel Čapek (The guy who gave us the word “robot” in R.U.R.)

fr0sty wrote on 6/17/2018, 1:12 PM

Quickly encode, quickly fill up the RAM buffer, slowly dump it to the hard drive. Rinse and repeat.

Systems:

Desktop

AMD Ryzen 7 1800x 8 core 16 thread at stock speed

64GB 3000mhz DDR4

Geforce RTX 3090

Windows 10

Laptop:

ASUS Zenbook Pro Duo 32GB (9980HK CPU, RTX 2060 GPU, dual 4K touch screens, main one OLED HDR)

Former user wrote on 6/26/2018, 3:37 AM

Just as an update I watched a video comparing vegas to Power Director. In the video he notes Power director encodes about 33% faster, he also notes what I see, encode 60 frames, pause, encode, pause. But with power director there is no pause, so the theory about the necessary hardware buffers causing the delay & is unavoidable just isn't true.

In the video you can also see how much more gpu power director is able to utalise compared to Vegas

If it doesn't play at time stamp go to 2m28s.