Decoding with intel UHD 770 - what changed with mxcompoundplug.dll?

Juho-Karjalainen wrote on 5/28/2024, 3:55 AM

Hi all!

I have been using Vegas Pro 21 very effectively with a combination of a i7-12700K with UHD 770iGPU and AMD RX 6900 XT for heavy lifting.

I utilize the iGPU for decoding purposes and it used to work flawlessly with my most used material, which is XACV-S 10bit 422 from various sony cameras.

If I use the new VP21 build 315 AVC decoding (with mxcompundplug.dll) I can only decode HEVC stuff with the UHD 770. Otherwise the iGPU is not utilized and sits idle. With the older so4compound I get 4-15% utilization of the iGPU in the XAVC-S 10bit material, which really speeds up timeline performance especially in transitions and going from clip to clip.

Is this expected behaviour? I get better stability with the mxcompoundplug but timeline performance drops AND it makes render times about 15% longer. Are you guys able to decode 10 bit avc stuff with intel iGPUs?

I'm using AMD Adrenaline 22.5.1. drivers (yes, very old but stable with my older plugins) and my UHD 770 has the recommended manufacturer drivers.

Thanks for this forum!

Comments

RogerS wrote on 5/28/2024, 4:38 AM

Everything changed with MxCompound and the new video engine. QSV performance in my testing dropped from 21.208 and not all Fx (color grading panel, etc.) are efficiently GPU accelerated at present.

However what you said doesn't quite make sense- are you taking about AVC or HEVC? You said both. Yes I can decode 10-bit HEVC footage with my Intel iGPU if I manually change it to that in preferences/ file io. You can see exactly what decoder it uses in media properties (right-click on the media). Different footage goes to different decoders. Feel free to share a screenshot of exactly what you see (including task manager iGPU decoding activity).

For 10-bit 422 did you try "enable experimental HEVC decoding" in preferences, file io? That uses the so4compound decoder. Otherwise if that's most of your footage I'd stay with 21.208 and wait for further improvements to MxCompound in VP 22. Development is an ongoing work in progress that has little relation to the version number.

Juho-Karjalainen wrote on 5/28/2024, 5:36 AM

Thanks for the info and sorry for the confusion:
- HEVC footage is being decoded with QSV in both 21.208 and 21.315
- The problem is with the iGPU being unutilized with XAVC S 10bit 422 material in builds after 21.208. In earlier builds it was used in the "3D section" of Task Manager, giving a boost of approx 12 %. It doesn't decode the x avc-s 10 bit 422 material in any builds, but it does do something that helps performance.


The png shows performance with the older so4compound, notice the 14% utilization:

Here is the same project with mxcompound, notice 0% utilization:

 

So I guess my real questions are: What is my iGPU doing that's helping me in older VP21 builds, and is that functionality now gone?

RogerS wrote on 5/28/2024, 5:44 AM

Decoding activity shows up under video decode so this is confusing. I also have a UHD770.
You are sure it's HEVC 422 not AVC? Can you share MediaInfo for the specific media in use?

https://www.vegascreativesoftware.info/us/forum/faq-how-to-post-mediainfo-and-vegas-pro-file-properties--104561/

Can you share a screenshot of preferences, file io?

When you right-click on the media can you see which decoder is in use (properties/general)?

Here is an example:

General
 
  Type: MAGIX HEVC
  Size: 131.22 MB (134,369,061 bytes)
  Created: Thursday, March 28, 2024, 10:23:31 PM
  Modified: Thursday, March 28, 2024, 10:24:59 PM
  Accessed: Thursday, March 28, 2024, 10:24:59 PM
  Attributes: Archive

Streams
  Video: 00:00:12.480, 50.000 fps progressive, 3840x2160x32, HEVC
  Audio: 00:00:12.480, 48,000 Hz, Stereo, PCM

ACID information
  ACID chunk: no
  Stretch chunk: no
  Stretch list: no
  Stretch info2: no
  Beat markers: no
  Detected beats: no

Other metadata
  Regions/markers: no
  Command markers: no

Media manager
  Media tags: no

Plug-In
  Name: mxcompoundplug.dll
  Folder: C:\Program Files\VEGAS\VEGAS Pro 21.0\FileIO Plug-Ins\mxcompoundplug
  Format: MAGIX HEVC
  Version: Version 21.0 (Build 315)
  Company: MAGIX Computer Products Intl. Co.

Juho-Karjalainen wrote on 5/28/2024, 6:25 AM

Thanks for your patience.

The problem is not with any HEVC-material, but with xavc-10 bit 422 material from sony cameras (such as the fx30 that I often use).

HEVC is decoded well with UHD770 in all versions of VP21. The clips I am referencing are all the following XAVC S -format:

Format                                   : XAVC
Codec ID                                 : XAVC (XAVC/mp42/iso6)
File size                                : 1.13 GiB
Duration                                 : 45 s 120 ms
Overall bit rate mode                    : Variable
Overall bit rate                         : 214 Mb/s
Encoded date                             : UTC 2024-04-17 08:13:49
Tagged date                              : UTC 2024-04-17 08:13:49

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High 4:2:2@L5.2
Format settings                          : CABAC / 2 Ref Frames
Format settings, CABAC                   : Yes
Format settings, Reference frames        : 2 frames
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 45 s 120 ms
Bit rate mode                            : Variable
Bit rate                                 : 200 Mb/s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 50.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:2
Bit depth                                : 10 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.482
Stream size                              : 1.05 GiB (94%)
Encoded date                             : UTC 2024-04-17 08:13:49
Tagged date                              : UTC 2024-04-17 08:13:49
Color range                              : Full
Metas                                    : 3
Codec configuration box                  : avcC

Audio
ID                                       : 2
Format                                   : PCM
Format settings                          : Big / Signed
Codec ID                                 : twos
Duration                                 : 45 s 120 ms
Bit rate mode                            : Constant
Bit rate                                 : 1 536 kb/s
Channel(s)                               : 2 channels
Sampling rate                            : 48.0 kHz
Bit depth                                : 16 bits
Stream size                              : 8.26 MiB (1%)
Encoded date                             : UTC 2024-04-17 08:13:49
Tagged date                              : UTC 2024-04-17 08:13:49

This material is not being decoded with the UHD770, but while I play it on the timeline, it nevertheless utilizes the iGPU (which I have selected in file I/O).

Here is my File i/O. With these settings the UHD 770 flares up in Task Manager when I play back timeline clips and helps with performance as is seen under the "task manager 3d tab", whatever that might be.

 

Here is the Vegas media properties:

 Type: XAVC-S
  Size: 1.18 GB (1,208,256,363 bytes)
  Created: 17 April 2024, 10:14:35
  Modified: 17 April 2024, 10:14:36
  Accessed: 28 May 2024, 14:04:02
  Attributes: Archive

Streams
  Video: 00:00:45.120, 50.000 fps progressive, 3840x2160x32, XAVC-S
  Audio: 00:00:45.120, 48,000 Hz, Stereo, PCM

Summary
  [TCFM]: 47244640265

ACID information
  ACID chunk: no
  Stretch chunk: no
  Stretch list: no
  Stretch info2: no
  Beat markers: no
  Detected beats: no

Other metadata
  Regions/markers: no
  Command markers: no

Media manager
  Media tags: no

Plug-In
  Name: so4compoundplug.dll
  Folder: C:\Program Files\VEGAS\VEGAS Pro 21.0\FileIO Plug-Ins\so4compoundplug
  Format: AVC
  Version: Version 21.0 (Build 315)
  Company: MAGIX Computer Products Intl. Co.

In summary:

If I use the mxcompoundplug it only uses the iGPU for HEVC decoding but doesn't do anything for the aforementioned XAVC S -material. This is puzzling.

 

RogerS wrote on 5/28/2024, 10:00 AM

Okay, the key here is that it is 10-bit 4:2:2 AVC, which no hardware decoder can read. It's a limitation of the decoders, not VEGAS.

In general I'd disable legacy AVC and let the AMD GPU do all the decoding for AVC in 21. For 10-bit 422 HEVC QSV is the only real choice.

If you find legacy AVC works better with it then use that.

Hopefully VEGAS 22 will free us from all these decoder "choices" and also leverage more of the GPU's computational ability and frame caching for media that can't be hardware decoded like 10-bit 422 AVC.

Wolfgang S. wrote on 5/28/2024, 10:48 AM

The intersting point is: with FX3 XAVCS h.264 50p 10bit 422 footage, I see a utiliziation if I switch the file i/o settings to my i-GPU - here an Intel Iris Xe GPU:

and playback if nice with this footage, if I select the i-GPU for decoding.

If I switch back to the RTX 3070 Ti in my system (laptop, specs see in my signture), then I see also a nice i-GPU utilization of the i-GPU here to (about 20% or so). The old legacy AVC decoder shows a significant weaker performance.

I think my footage is the same that you use - but to be sure: could you be so kind and offere a download of your XAVC h.264 10bit 422 50p footage? I would like to check that with your footage too.

Desktop: PC AMD 3960X, 24x3,8 Mhz * RTX 3080 Ti (12 GB)* Blackmagic Extreme 4K 12G * QNAP Max8 10 Gb Lan * Resolve Studio 18 * Edius X* Blackmagic Pocket 6K/6K Pro, EVA1, FS7

Laptop: ProArt Studiobook 16 OLED * internal HDR preview * i9 12900H with i-GPU Iris XE * 32 GB Ram) * Geforce RTX 3070 TI 8GB * internal HDR preview on the laptop monitor * Blackmagic Ultrastudio 4K mini

HDR monitor: ProArt Monitor PA32 UCG-K 1600 nits, Atomos Sumo

Others: Edius NX (Canopus NX)-card in an old XP-System. Edius 4.6 and other systems

Howard-Vigorita wrote on 5/28/2024, 12:42 PM

@Wolfgang S. Looks like your 28% igpu utilization is being reported as 3D instead of decoder processing. I do see little decoder-1 blip which might be an aborted attempt. You might want to compare with charts processing 8-bit avc 4:2:0 mp4. I'm guessing that Vegas is using the igpu as a math processor for it's avc 4:2:2 calculations like bit-coin miners.

Juho-Karjalainen wrote on 5/29/2024, 12:47 AM

Here is a footage sample for @Wolfgang S.

Link: https://1drv.ms/v/s!AjvKn51MP8DenYVMb3v2AqxlY_kyaw?e=A2qDw4

I am not getting the same utilization of the iGPU in VP21 b315. The utilization only happens in b208 OR when I enable legacy AVC in newer builds.

I realize the UHD770 is not doing the decoding work for 10-bit 4:2:2 AVC, but it is still doing something to help performance in the older builds. Maybe it is what @Howard-Vigorita says with the 4:2:2 calculations.

It actually helps quite a bit for heavy projects to have that 12-25% of "extra" iGPU power, I can clearly see it in my timeline playback and also in my rendering speeds.

Do Intel GPU users recommend switching to Arc driver instead of the UHD 770 manufacturer drivers? Could that help me get the iGPU back in action in b315?

HEVC decoding works like a charm in all VP21 builds with the Intel iGPU, so that's not an issue.

 

RogerS wrote on 5/29/2024, 1:41 AM

The driver from Intel is unified (Arc, Xe, recent IGPU)- it's what I use as OEM drivers aren't always updated quickly.

The issue here is on the VEGAS side as the video engine is still a work in progress. I'd assume performance will continue to increase with VP 22. You can always go back to 208 by uninstalling VEGAS and reinstalling it from the file linked to in the news section of this forum.

Wolfgang S. wrote on 5/30/2024, 5:06 AM

Here is a footage sample for @Wolfgang S.

Link: https://1drv.ms/v/s!AjvKn51MP8DenYVMb3v2AqxlY_kyaw?e=A2qDw4

@Juho-Karjalainen

Thank your for the file. Just a question - have you shoot the file with a log profile, or what have been the camera settings? The file looks quite flat for me, but the standard transformation with ACES to rec709 deliveres not a great result. So the questions are:
a) with which profile in the FX30 was that shoot?
b) what are the projecft settings that you apply, when you see the 0% utilization of the i-GPU?

@Howard-Vigorita

I just refer to the 0% utlization that is shown in the screenshots by Juho-Karjalainen above.

For me the question was not, for which sub-process the 0% are (not) used - or utilized on my laptop. Because I see some utilization, as said.

 

 

 

Desktop: PC AMD 3960X, 24x3,8 Mhz * RTX 3080 Ti (12 GB)* Blackmagic Extreme 4K 12G * QNAP Max8 10 Gb Lan * Resolve Studio 18 * Edius X* Blackmagic Pocket 6K/6K Pro, EVA1, FS7

Laptop: ProArt Studiobook 16 OLED * internal HDR preview * i9 12900H with i-GPU Iris XE * 32 GB Ram) * Geforce RTX 3070 TI 8GB * internal HDR preview on the laptop monitor * Blackmagic Ultrastudio 4K mini

HDR monitor: ProArt Monitor PA32 UCG-K 1600 nits, Atomos Sumo

Others: Edius NX (Canopus NX)-card in an old XP-System. Edius 4.6 and other systems

Juho-Karjalainen wrote on 5/30/2024, 8:08 AM

Here is a footage sample for @Wolfgang S.

Link: https://1drv.ms/v/s!AjvKn51MP8DenYVMb3v2AqxlY_kyaw?e=A2qDw4

@Juho-Karjalainen

Thank your for the file. Just a question - have you shoot the file with a log profile, or what have been the camera settings? The file looks quite flat for me, but the standard transformation with ACES to rec709 deliveres not a great result. So the questions are:
a) with which profile in the FX30 was that shoot?
b) what are the projecft settings that you apply, when you see the 0% utilization of the i-GPU?

@Howard-Vigorita

I just refer to the 0% utlization that is shown in the screenshots by Juho-Karjalainen above.

For me the question was not, for which sub-process the 0% are (not) used - or utilized on my laptop. Because I see some utilization, as said.

 

 

 

The footage is just the basic slog3 profile of the FX30, (S-Gamut3.Cine/S-Log3), this particular clip heavily over-exposed.

My usual project properties are above (here the frame rate is wrong, naturally I would use a frame rate more suited for 50fps):

I usually edit in 8bit (full range) and do color correction in 32bit float (video levels).

The only thing that seems to make a difference in the iGPU utilization is the the decoding method used (so4compound v mxcompound) where I get utilization with so4 and not with the mxcompound.

Wolfgang S. wrote on 5/30/2024, 11:05 AM

Using HD project settings and 8-bit full range, my laptop achieves a playback frame rate of up to 50 fps at best/full quality when I select my Intel Xe Graphics as the "hardware decoder to use" in Options/Preference File I/O.

The i-GPU's utilization hovers around 18 to 20%.

However, I've noticed significant frame rate drops to below 5 fps, particularly when looping a region around the event. Upon looping, the i-GPU's utilization decreases to about 10%, indicating instability in build 315.

This occurs with the mxcompoundplug.dll.

Switching to my RTX 3070 Ti in the File I/O settings, the frame rate remains at 50 fps with similar i-GPU utilization.

This testing is conducted on my laptop (specs in my signature).

Yet, when I move the Vegas GUI to a secondary display, the i-GPU's utilization drops to nearly zero. It might be worth checking this behavior on your system.

So, with the GUI on the primary display:

And here with the GUI located on the secondary display:

 

 

Last changed by Wolfgang S. on 5/30/2024, 11:16 AM, changed a total of 1 times.

Desktop: PC AMD 3960X, 24x3,8 Mhz * RTX 3080 Ti (12 GB)* Blackmagic Extreme 4K 12G * QNAP Max8 10 Gb Lan * Resolve Studio 18 * Edius X* Blackmagic Pocket 6K/6K Pro, EVA1, FS7

Laptop: ProArt Studiobook 16 OLED * internal HDR preview * i9 12900H with i-GPU Iris XE * 32 GB Ram) * Geforce RTX 3070 TI 8GB * internal HDR preview on the laptop monitor * Blackmagic Ultrastudio 4K mini

HDR monitor: ProArt Monitor PA32 UCG-K 1600 nits, Atomos Sumo

Others: Edius NX (Canopus NX)-card in an old XP-System. Edius 4.6 and other systems