Log in

View Full Version : MPC-HC + madVR freeze in x264 fullscreen


Rhino Cracker
31st October 2024, 14:23
Hi all,

I have a problem using one of the latest builds of madVR and MPC HC.

While madVR does a great job in making 2160p HDR h/x265 material watchable after setting the chroma upsampling to Bilinear

and MPC-HC was doing a good job in displaying 1080p SDR h/x264 material with the default evr custom renderer for years

for some reason my video freezes when I enter fullscreen and try to watch anything encoded in h/x264 with madVR selected in MPC-HC.

Combinations I've tested:
- 1080P SDR h264: doesn't work
- 1080p SDR x264: doesn't work
- 1080p SDR x265: works
- 1080p HDR x265: works
- 2160p SDR h264: doesn't work
- 2160p SDR h265: works
- 2160p HDR x265: works
So for this moment, I see a clear correlation between h/x264/5 and working/notWorking.


I would like to use madVR for more than just 2160p HDR, because:
- I'm too lazy to switch renderers and restart MPC-HC before every video
- madVR helps me to use the full color range abilities of my TV, which looks like is from 10-12 to 245-250, when I set Windows color output format to Full-RGB.
Without the custom color range feature of madVR, I either have to boost every black value to (16,16,16), which is rather grey + never reach max white, or I have to loose all details <(13,13,13) as black and get a slight over saturation / white clipping.

So, I'm also thankful for any adjustment tips to better use the color space of my TV, either only in MPC-HC or in whole windows. But this topic's primary goal is to make madVR running without a freeze.


Here are the details of my setup:
- MPC-HC x64 2.3.5 from girhub: https://github.com/clsid2/mpc-hc/releases
- madVR v0.92.17 from here: https://forum.doom9.org/showthread.php?t=146228
- My machine is a Zotac ZBOX CI337 (https://www.zotac.com/de/product/mini_pcs/zbox-ci337-nano-barebone-0#spec) with a passively cooled Intel N100 (https://www.intel.de/content/www/de/de/products/sku/231803/intel-processor-n100-6m-cache-up-to-3-40-ghz/specifications.html) inside
(supported hardware video decoders should be listed here (https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding)in column "Alder Lake")
- Screen: Samsung 50" 1080p SDR Plasma TV PS50B530S2W

Grimsdyke
1st November 2024, 21:26
Have you checked the settings in : Internal filters => LAV video decoder ?

Also try activating or de-activating "enable automatic fullscreen exclusive mode" in MadVR's => rendering

Sunspark
3rd November 2024, 20:04
Don't use fullscreen exclusive anymore, it'll be too hard to get working properly now so uncheck it if it's checked and see if you still have the issue.

Only use windowed mode or (if your drivers still support it) d3d9 overlay.

The fact that you're having a freeze with h264 and not h265 makes me think it's a driver issue.. so test with these basic settings first.. set the LAV decoder to "None" to have the CPU do the decoding instead of the video card.. see if it fixes it.. if it does, then you can try setting the LAV decoder to DXVA2-Copyback and in MadVR have everything unchecked on the rendering>general settings tab. See if it freezes. If it doesn't, you can go from there. If it does, try LAV decoder with D3D11-Automatic and in madvr rendering tab put a check in Use Direct3D11 and keep the one for vsync under it in place.

Rhino Cracker
12th November 2024, 01:37
Have you checked the settings in : Internal filters => LAV video decoder ?
Hi, what should I check there?
https://forum.doom9.org/attachment.php?attachmentid=18764&stc=1&d=1731370653

Also try activating or de-activating "enable automatic fullscreen exclusive mode" in MadVR's => rendering
Activating it causes the screen to go and stay black when entering fullscreen, instead of showing a frozen image resized to 16:9 (the black borders were gone)



Don't use fullscreen exclusive anymore, it'll be too hard to get working properly now so uncheck it if it's checked and see if you still have the issue.
It was not checked.

Only use windowed mode or (if your drivers still support it) d3d9 overlay.
I cannot see any d3d9 option here:
https://forum.doom9.org/attachment.php?attachmentid=18765&stc=1&d=1731370969
is it disguised as "use seperate device for DXVA processing" here?

The fact that you're having a freeze with h264 and not h265 makes me think it's a driver issue.. so test with these basic settings first.. set the LAV decoder to "None" to have the CPU do the decoding instead of the video card.. see if it fixes it.. if it does, then you can try setting the LAV decoder to DXVA2-Copyback and in MadVR have everything unchecked on the rendering>general settings tab. See if it freezes.
It doesn't freeze when entering fullscreen anymore. But both LAV Filter options ("copy-back" and "none") cause a high cpu load (20% for 1080p SDR x264 instead of 2% as before; 50% for 2160p HDR h265) and 4k is no longer watchable for stuttering.

If it doesn't, you can go from there. If it does, try LAV decoder with D3D11-Automatic and in madvr rendering tab put a check in Use Direct3D11 and keep the one for vsync under it in place.
Setting LAV video decoder to D3D11 and leaving madVR with D3D11 activated seems to do the trick! :)
Thank you very much, this seems to be a working configuration for all formats tested for now.
https://forum.doom9.org/attachment.php?attachmentid=18766&stc=1&d=1731371399
It still results in 4-11% cpu usage by mpc-hc.exe for 1080p sdr x264 and 11-20% for 2160p hdr h265, but it works without stuttering.
Need to check for overheating in a long time check, but if I don't reply again, it works :)

Grimsdyke
12th November 2024, 19:07
I also have one N100-based-HTPC and there I noticed that MPC-BE is much more responsive if BE's video decoder is used instead of the LAV video decoder.
Especially on 2160p HDR material !
Might be worth trying on MPC-HC. You can find BE's stand-alone filters on their github website.

Klaus1189
12th November 2024, 19:09
Or try full MPC-BE ;)