Vegas 19 and Windows 10 Strange Behaviors

ChuckMan wrote on 1/1/2024, 6:07 PM

Hi all,

Recently I have done some rendering tests using Voukoder codec v13.3.
I would like to share my results to help other as well as asking forum experts to answer few questions that puzzle me.
Note, I am no beginner to Vegas software. I have used Vegas for many years and written my own scripts to process videos.

Background:
Due to the efficiency of Voukoder codec which produces 1/3 the file size compared to Mainconcept with no visual quality loss.
I am interested to re-render my library of thousands of video clips that were captured from hi8, digital 8, and digital 8 NTSC Wide screen camcorders.
The videos were captured using Video for Windows AVI codec; thus, the original file size is large.
The rendering template I used throughout this test is "Video: project default (4:2:0 8 bit), Audio: project default"

Test Video length: 2:44.29 minutes, Size: 636,763 KB, project source: digital 8, project is set with 32 threads.

1. Windows 10 behavior
    This test is with Optimal GPU acceleration (in Prefrerence->Video).
    1a. When Vegas is rendering in foreground (normal window), it averaged:
        38% CPU (45% CPU for all processes)
        30% GPU
        30% GB RAM
        The render time: 3:10.13 minutes
    1b. When Vegas is rendering in background (minimized window), it averaged :
        30% CPU (34% CPU for all processes)
        20% GPU
        30% GB RAM
        The render time: 7:37:27 minutes
    1c. With 2 concurrent renderings in foreground (normal window), it averaged:
        30% CPU each (67% CPU for all processes)
        30% GPU
        32% GB RAM
        The render time: 3:56.63 minutes each
    1d. With 2 concurrent renderings in background (minimized window), it averaged:
        17% CPU each (37% CPU for all processes)
        20% GPU
        32% GB RAM
        The render time: 14:09.89 minutes each
    1e. When running 2 concurrent renderings (in 2 batches using a script to process hundreds of projects), Vegas failed in both batches after rendered couple projects with error: Resource not found...

    Question: Why CPU is not pushed to 100%? There are no other processes are running.
    
2. CPU vs GPU acceleration
    This test is with Optimal GPU acceleration OFF (in Prefrerence->Video).
    1a. When Vegas is rendering in foreground (normal window), it averaged:
        41% CPU (50% CPU for all processes)
        35% GPU
        34% GB RAM
        The render time: 2:50.69 minutes
    1b. When Vegas is rendering in background (minimized window), it averaged :
        32% CPU (43% CPU for all processes)
        30% GPU
        30% GB RAM
        The render time: 7:18.69 minutes
    
    Question: Turning off GPU acceleration actually increased both CPU and GPU utilization. It also saves 20 seconds of rendering time. WHY?

3. Project settings and other behaviors
    The default project setting is 720x480, 29.97 NTSC, Lower field first.
    3a. Below are output file size (.mp4 using Voukoder) with various project settings. Note there is no significant visual difference with these mp4 files. This is probably due to source video is low resolution.
        720x480 i30 (project default):  4,583 KB
        1280x720 i30               :  6,643 KB
        1920x1080 i30             : 13,045 KB
        1920x1080 i60             : 13,045 KB
        720x480 p30                :  2,815 KB
        1280x720 p30              :  4,458 KB                        
        1920x1080 p30            :  8,534 KB
    
        Question: Why the file size is significantly smaller when change the Field Order to "None (Progressive scan)"?
        Note: The "Video: project default (4:2:0 8 bit), Audio: project default" template is used as is for all above renderings.

    3b. Change the thread count from 32 (default) to 48 (max) makes no significant difference in rendering time (only couple seconds difference).
    3c. When change Voukoder's codec to h.264 (NVIDA NVENC), it makes no significant difference in render time but file size increase quite a bit.
 

Comments

mark-y wrote on 1/1/2024, 6:33 PM

       Question: Why the file size is significantly smaller when change the Field Order to "None (Progressive scan)"?

Because 30i is 2 interlaced fields per frame, so 60 scans per second.

30p is one field per frame, so 30 scans per second.

 

ChuckMan wrote on 1/1/2024, 7:26 PM

Thank you for the quick reply. I got it how interlace works in a video. When render to MP4 using Voukoder, the output is 30p for both of the project settings (Lower Field First and Progressive). My question is why changing the project Field Order to Progressive make such a difference in file size saving?

mark-y wrote on 1/1/2024, 8:39 PM

My question is why changing the project Field Order to Progressive make such a difference in file size saving?

It sounds like you have set your Project incorrectly.

Voukoder adopts your Project Settings.

What is your Deinterlace Method? Please post a screenshot.

 

ChuckMan wrote on 1/1/2024, 8:52 PM

Yes. I deliberately set it to Progressive instead of interlace in order for Voukoder to render to a smaller file but maintain the same quality. The issue is I don't have an explanation why quality is not suffered since I mess up the field order. I have not tested this with other codecs. I am not with my pc to send a screen print. Another question is if we change the project setting on all the interlace sources to Progressive, would it produce smaller mp4 files while maintaining the same quality?

mark-y wrote on 1/2/2024, 10:32 AM

The question is simpler than that -- Since you have changed the interlace field order in Project Properties, what Deinterlace Method have you chosen ?

Look below the line.

Explanation: Voukoder adopts only and exactly what you have selected in Project Properties; it has now way of knowing if those choices are correct or something else ;?)

ChuckMan wrote on 1/2/2024, 1:26 PM

I use the default template in Voukoder. So, whatever interlace method is in that default setting as I didn't change anything there. I am also puzzled why it works and produce even better results by messing up the field order. Thank you for your continuing interested in helping me.

ChuckMan wrote on 1/2/2024, 1:27 PM

I meant whatever Deinterlace method...

RogerS wrote on 1/2/2024, 2:03 PM

The deinterlace method is in project properties not Voukoder if I recall. NVENC won't work for interlaced renders anf TVs are progressive these days so better to deinterlace anyway.

ChuckMan wrote on 1/2/2024, 4:32 PM

Deinterlace method is Blend Field. Please see screen print below. BTW, NVENC works for interlace source video. I have tried it.

RogerS wrote on 1/2/2024, 6:38 PM

In multiple threads the developer of Voukoder says otherwise for Turning and newer GPUs. You have to send it progressive (interlaced source is fine if made progressive in the project).

https://www.voukoder.org/forum/thread/693-nvenc-doesn-t-work-just-jumps-from-0-to-100/

ChuckMan wrote on 1/2/2024, 7:01 PM

Yes. I set my project to Progressive. I think that is why nvenc works even though the actual ounce is interlace.

ChuckMan wrote on 1/2/2024, 7:02 PM

I still don't understand why turning gpu acceleration off in Vegas actually utilizes more gpu and renders faster.

mark-y wrote on 1/2/2024, 9:01 PM

Chuck,

Try these exact Project Settings for your "NTSC Widescreen DV source -> to -> 30p Progressive PAR 1.0 output."

Although I don't have Vegas Pro 19, they work well for me.

If you like them, I can explain "why" as we go along. They are optimized for delivery, rather than just local playback on your PC.

I always render in Voukoder.

Otherwise, best of luck in your inquiry, and Welcome to the forums!

ChuckMan wrote on 1/2/2024, 9:43 PM

Great. Thank you for sharing the profile. I will run some tests tomorrow and report back the results.

Former user wrote on 1/2/2024, 10:31 PM

I still don't understand why turning gpu acceleration off in Vegas actually utilizes more gpu and renders faster.

Depending on resolution, the fastest transcode could actually be with GPU processing turned off, GPU decoder turned off, GPU encoding turned off, this is due to limitations of decoder and encoder(in Vegas it never reaches 100%) and also the overheads with communication between CPU and GPU

You should never look at the box that says GPU with a number in it because you have no idea what it is telling you. When you say you were using more GPU with GPU processing turned off, it's most likely the number displayed was GPU decoding or GPU encoding, which ever was the highest number. You should always look at individual GPU stats for GPU processing, decoding and encoding.

ChuckMan wrote on 1/2/2024, 11:02 PM

Thank you for the tips. The gpu encoding and decoding are not used regardless of whether or not turning off gpu acceleration. I only notice gpu encoding is used when the nvenc codec is selected in the rendering template. So, when I say gpu utilization, I meant mostly 3d box busy and sometime Copy box busy.

ChuckMan wrote on 1/3/2024, 6:55 PM

Chuck,

Try these exact Project Settings for your "NTSC Widescreen DV source -> to -> 30p Progressive PAR 1.0 output."

Although I don't have Vegas Pro 19, they work well for me.

If you like them, I can explain "why" as we go along. They are optimized for delivery, rather than just local playback on your PC.

I always render in Voukoder.

Otherwise, best of luck in your inquiry, and Welcome to the forums!

I tested using "Smart Adaptive (GPU only)" for deinterlace rendering with Voukoder. It is 3% faster; however, the output file is 23% larger compared to using Blend fields deinterlace. Disable resampling yields 5% of output file size reduction. Changing the rendering quality from Good to Best increase 25% rendering time with no noticeable quality change. So, for my system, I will stick with the followings:

Deinterlace: Blend fields

Rendering quality: Good

Resample mode: Disable resample

 

ChuckMan wrote on 1/3/2024, 6:56 PM

mark-y wrote on 1/3/2024, 7:42 PM

 

That is not the same template format you posted before. Your first one was Widescreen NTSC, PAR 1.2121, and the second is 4:3 NTSC, PAR 0.9091. Which is it?

In either case, I recommended rendering to a delivery format, which is square pixels, PAR 1.0.

https://en.wikipedia.org/wiki/Pixel_aspect_ratio

If you are concerned about keeping your output file size small, I suggest NOT using a machine encoder; e.g., NVENC, AMD, or QSV

Instead, use the software x264 encoder, starting your tests at about 23 CRF, which is better quality than machine encoders, according to most SSIM / PSNR Quality Measurement Benchmarks. No, you do not need the increased compression and extra rendering time to do HEVC.

Explanation: machine encoders can take up to twice the file siz, in order to maintain a comparable Quality Index (QMI) compared with their excellent software counterparts.

In summary, machine encoders are optimized for one thing only: encoding speed, at the sacrifice of both output quality and bitrate (file size).

I have offered you enough information for you to go out there and make some really good mistakes!

Best of luck going forward, and instead of chasing numbers, study the literature. The wheel has been invented.

@ChuckMan

ChuckMan wrote on 1/3/2024, 8:08 PM

Thanks for the confirmation. I am not using gpu encoding. With my 4060 card, it is not much faster anyway.