Log in

View Full Version : madVR Options Explained


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17

quietvoid
18th January 2021, 17:04
36-39ms per frame should be fine for 24p content. What are you using for dithering?
You could try cropping as well, that might help.

@huhn: UHD is supposed to be slower because tonemapping is done on more pixels than lower res.

Klaus1189
18th January 2021, 17:15
PCI lanes -> Check the connection of your GPU with your Mainboard. A mechanical PCIe x16 slot may only have 8 or maybe even only 4 lanes electrically. It is rare, but sometimes users do strange things when building computers.

What mainboard and GPU do you have?

lello
18th January 2021, 17:38
Asrock Z77 Extreme 6

Klaus1189
18th January 2021, 18:11
https://download.asrock.com/Manual/Z77%20Extreme6.pdf
On page 14 you can see the PCI and PCIe slots
1.) Which one do you use for your GPU?
2.) Do you have any other PCIe cards installed which can cause the x16 lanes to be split up to x8 and x8 to the GPU and the other PCIe-card? Can be a PCIe-SSD, ...
3.) What GPU do you use?

lello
18th January 2021, 22:06
1) PCIE2
2) No, I only have one Essence ST sound card installed on the PCI2 slot
3) AMD RX 580 nitro+ 4GB

Klaus1189
18th January 2021, 22:21
Since you have an AMD GPU, open AMD Radeon driver and look for info, there is a line which tells you how the card is connected, that means how many lanes are used, it should be „3.0 x16“

Asmodian
18th January 2021, 22:56
If I select "compromise on hdr tone & gamut mapping accuracy", the rendering goes down and everything works, but I lose several things of the tone mapping

This seems pretty conclusive, your GPU is too slow for your HDR settings. A faster GPU is the only fix.

I would not worry about the PCIe link; if it works with those trade quality for performance options enabled the problem is not the PCIe link.

huhn
18th January 2021, 23:41
there are big where PCIe issues cost unregulary performance you can see that when the first step and the last step have unusual high rendertimes.

which is kinda present here.

@huhn: UHD is supposed to be slower because tonemapping is done on more pixels than lower res.
with tone mapping yes.

Asmodian
19th January 2021, 00:09
there are big where PCIe issues cost unregulary performance you can see that when the first step and the last step have unusual high rendertimes.

Hmm... it would be good to check it but given how slow HDR could be on my 2080 Ti I still think it is simply that the GPU is too slow.

That motherboard and slot should be fine for 16x PCIe 3.0.

huhn
19th January 2021, 07:50
i'm not even question that it is much more likely that the GPU is just not fast enough.

the reason i would look into it is that blur dif is the first step and blur dif usually takes 0.3 -1.50 ms on this screen it's 4.85 ms.

on the other hand i don't even know how he got it to be the first step.

edit: and the 580 is a pretty fast card when NGU isn't used which is the case here.

lello
19th January 2021, 09:25
Since you have an AMD GPU, open AMD Radeon driver and look for info, there is a line which tells you how the card is connected, that means how many lanes are used, it should be „3.0 x16“

I checked and that's it

Klaus1189
19th January 2021, 18:23
Then, you won't have a PCIe bottleneck. I assume anything else. Sorry, but I can't diagnose anymore. Do some more tests.

Asmodian
19th January 2021, 22:15
Sorry, but I can't diagnose anymore. Do some more tests.

Does the GPU simply being too slow seem unlikely?

huhn
19th January 2021, 22:27
the old old screens showed something like 40 ms so a little bit to much and spikes in the 71 ms.

lello
28th February 2021, 10:40
I have a doubt.

Since black band detection is done by the CPU and not the GPU, could it be that my current Core i5 3300 is insufficient? So is it better to change the processor instead of the video card?
Could an i5 10400F fit?

I also tried to see the percentages of CPU utilization with DXVA2 copy back active, and I saw that with an HD movie the usage was 20% while with a BD UHD it went up to 70/80%.

Thanks for your help

Asmodian
28th February 2021, 11:08
Since black band detection is done by the CPU and not the GPU, could it be that my current Core i5 3300 is insufficient?

I do not think so. Black bar detection is very easy for the CPU.

Have you tried with it disabled?

lello
28th February 2021, 14:50
Certainly, these are the CPU usage data:

d3d11 native & black bar detection: CPU 20% rendering 38
Copy Back automatic & black bar detection: CPU 70% rendering 68
Copy Back automatic NO black bar detecion: CPU 38% rendering 68

manni500
18th March 2021, 18:06
Asmodian,

I have been using your config suggestions for some time and to very good effect; many thanks.

Meanwhile I have an issue where I wonder if it is related to madVR or to the videos shown.

Whenever I run a lower-resoultion video on this screen at its native resolution (3840x2160) it comes to judder, with or without smooth motion enabled.

However, the judder goes away when I reduce the resolution to 1920x1080.

Is there anything to be done ad madshi level ?

Thanks in advance

Asmodian
18th March 2021, 20:04
It is very likely that your GPU is not fast enough to run my settings at full resolution.

What GPU are you using?

What do you mean by lower resolution, anything less than 1080p?

manni500
19th March 2021, 00:07
Thanks for the prompt response.

By lower resolution I mean 720p or less; but even a 720p is not always giving trouble.

Just for clarification: I am not using either of the two settings.bin that you keep available for download (I tested with them, but couldn't get them to work) but rather the basic settings that you mention in the text on https://forum.doom9.org/showthread.php?t=171787

My graphics cards is not great; it's a Zotac GT 1030 2GB. But no problem with films of 1080p and up and sometimes even 720p.

Asmodian
19th March 2021, 01:05
The first thing I would do is make sure quadrupling is disabled.

If you use ctrl-J, do you see the average rendering times above the frame time?

manni500
19th March 2021, 13:58
Quadrupling is not enabled; on the scaling algorithms I use
- Bicubic60
- Bicubic150
- Lanczos 3 taps

On ctrl-J, rendering is shown as 27.01 and 34.75ms resp. (screenshot attached); this on a video where judder is indeed prevalent

manni500
19th March 2021, 17:23
ADDENDUM

An interesting development: the judder goes away when I take out HW Acceleration in the LAV Filter

This probably will have other ramifications but I haven't found those yet

Asmodian
20th March 2021, 00:29
Interesting, that is weird.

Do you have the frames presented in advance set to 3 or 1? (recommended)

Sticking to software decoding is a great option though, if you aren't trying to watch 4K HEVC on a lower end or older CPU.

manni500
20th March 2021, 14:16
Frames presented are set to 3, I will now test things with 1 and report back.

My CPU is indeed a bit of a grandfather, I will likely have to get a new motherboard sometime soon.

Still, that will not explain the judder question: When the low-resolution films run on the fairly new GPU, I have judder. But when they run on the old CPU, there is none

manni500
20th March 2021, 16:33
UPDATE

I fiddled around with the frames presented - 1, 3 or 8: no difference.

Meanwhile, I realized that there were a lot of frames dropped when showing in top resolution (3940x2160). This caused me to play with some of the madVR settings, and low & behold - no more or only very few frames dropped and no more judder!

Unfortunately though, I cannot put my finger on what exactly caused this improvement.

But if you have an interest, I will be happy to send you the new settings.bin file

doffen
4th November 2021, 01:04
I've tried to set up separate profiles for 23,976 and 24 fps content, but my rules seem to round up and treat both framerates as 24 fps.
Does anyone have rules to differ between these two or any idea about how I can make them?

QBhd
4th November 2021, 15:04
Not sure why you would need to differentiate between the two, the processing power used for both should be nearly the same. But if I was going to make rules <24 and <25 should do the trick

QB

doffen
4th November 2021, 18:51
it's about reducing framedrops.
with 23.976fps content and 59.94Hz I get 2:3 pulldown, but with 24fps content and 59.94Hz I get lots of dropped frames. If I increase the framerate to 60Hz I don't get as many dropped frames anymore.

Ive tried these three rules:
if (deintFps < 24) "23fps"
else "24fps"

if (fps < 24) "23fps"
else "24fps"

if (fps >= 24) "24fps"
else "23fps"

The result is always the same, and the 23fps profile (first profile) is chosen with 24fp content.

It's almost like MadVR rounds 23.976 up to 24 and can't differ between the two.

.m4jX
4th November 2021, 22:17
Try

if (fps<23.999) "23fps"
else "24fps"

QBhd
4th November 2021, 22:38
But for what you want, it is better to setup a proper 23.976 and 24.000 refresh rate

QB

huhn
6th November 2021, 12:54
it's about reducing framedrops.
with 23.976fps content and 59.94Hz I get 2:3 pulldown, but with 24fps content and 59.94Hz I get lots of dropped frames. If I increase the framerate to 60Hz I don't get as many dropped frames anymore.

no you will get 1 extra repeated frame every 1000 frames which should create a 2:2 cadance for that rare case and short case.

doffen
7th November 2021, 00:10
Try

if (fps<23.999) "23fps"
else "24fps"

Thank you soo much!
This ruleset works perfectly :D

no you will get 1 extra repeated frame every 1000 frames which should create a 2:2 cadance for that rare case and short case.

I'm not sure we agree (or maybe we do) but you made me read a bit more about cadence. If I understand it correctly I will get something like a 4:10 cadence with 23.976 content and 59.94Hz screen.

MadVRs dropped/repeated frames stay up in the hours range when I match it the way I want to.
I did a short test having it the "wrong way" and I got numbers wich add up to what you said: 1 frame repeat/drop every 1000 frames.
24.000fps 59.94Hz = 1 frame drop every ≈41s
23.976fps 60Hz = 1 frame repeat every ≈41s

@QBhd
Yes normally it would be better to setup a proper 23.976 and 24.000 refresh rate.
Because my TV doesn't accept 4:4:4 chroma at 23.976 or 24.000hz refreshrate I use 59.94 and 60Hz instead. I never imagined the TV would have a limitation like this, but the only thing I can do is to try and work my way around it ;)

huhn
7th November 2021, 01:41
the numbers for 3:2 judder are not calculated you have to add them which is 4.8 a sec so do you really think 1 more or less every 41 sec makes a real day night difference?

doffen
7th November 2021, 19:01
No, I don’t think it will make a night and day difference.
It’s still an improvement within the compromises I’ve chosen.
Do you think I shouldn’t make this (now automated) improvement because it’s not a night and day difference?
I’m just curious, I’m doing it like this until either my equipment or opinion changes ;)

huhn
7th November 2021, 19:06
you are just waisting your time instead of usinf one of the other ways to fix the issue compeltely.

doffen
7th November 2021, 22:18
Which is?
I want 4:4:4 chroma resolution to my TV, which doesn’t work on 23/24hz.
If there is a better way I’d love to learn it!

huhn
8th November 2021, 00:06
smooth motion (literally made for this exact case).
you can try your luck with a custom refreshrate.
reclock.

doffen
8th November 2021, 03:07
Thank you for your input!
I'm already using smooth motion (with the setting: only if there would be motion judder without it) Using the Ctrl-J stats I see it as enabled.
So even with smooth motion I see an improvement in dropped/repeated frames with changing the refresrate.

I guess I could try a custom refreshrate with reclock, but I can already send 23.976 and 24.000Hz to my tv, which makes me lose 4:4:4 chroma.
Using ≈ 60Hz (59.94 and 60.00Hz) I keep 4:4:4 chroma. Since this is a limitation in the display (as far as I can tell) I really doubt re-clock will do any difference.
What's your thougts on it?

huhn
8th November 2021, 05:40
with SM active the drop/repeat number is still calculated but will never ever happen this is not a joke you will not drop or repeat a frame for sync reasons. it should be remove so user don't get confused it's clearly miss leading.

for a custom resolution i would try 48 from the usual also PC mode 50. custom resolution that change the refreshrate are unlikely to work on modern TVs.

doffen
8th November 2021, 18:54
Well I've clearly been misled.
I tried 48Hz wich my TV didn't accept.
50Hz works. I'll try switching back and forth and see what I prefer.
I guess it might make it easier for smooth motion as well, since it's closer to double frame rate than 60Hz.

Asmodian
8th November 2021, 19:52
Well I've clearly been misled.
I guess it might make it easier for smooth motion as well, since it's closer to double frame rate than 60Hz.

For smooth motion the faster the better. You always want the fastest refresh rate you can get and do not care what the ratio between the frame rate and refresh rate is.

flossy_cake
27th March 2022, 03:58
[deleted - posted in wrong thread]

fotb
21st July 2022, 18:18
it works! thank you!!

1050 is enough? 1060 is better for scaling algorithms? memory of 3GB or 6GB are determinants in the results?

Hello all,

Is the HDR to SDR conversion setting only available on version 0.92.11? I am currently using test build 132 and I dont see that option.

Can HDR to SDR conversion be done with a string of rules? If so, can someone provide me with one?

Thanks in advance!

crossclass
19th August 2022, 19:21
Mr. Asmodian very thanks for your explanation, but if I may ask but one question:
Is it possible to make profile in madvr that only triggers when an online video is played through it? Say I have profile "1080p60" for offline hdd videos but I want a profile for youtube "1080p60YT" with different settings that only triggers for youtube 1080p 60fps videos?
esp. this video: https://www.youtube.com/watch?v=Bw7qa94P0ls
Thank you.

Asmodian
23rd August 2022, 01:26
You can use the rule:
if (filePath = "*youtube*") "online"

to activate a profile for anything from YouTube.

crossclass
23rd August 2022, 23:35
I am sorry but I could not get it to work, my script:
,, ,, ,,
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) && (!HDR) && ((filePath = "*youtube*") "online") "1080p60YT"
nor this:
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (src=online) && (deintFps < 61) && (!HDR) && (filePath = "*youtube*") "1080p60YT"
Thanks in advance.

crossclass
24th August 2022, 00:10
Sorry the "online" in "if (filePath = "*youtube*") "online" is the profile name right? My 1080p scripts are as follows:
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 31) && (!HDR) "1080p"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) && (!HDR) "1080p60"
else if (filePath = "*youtube*") && (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) && (!HDR) "1080p60YT"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 31) && (HDR) "1080pHDR"
What am I doing wrong?

doffen
24th August 2022, 00:53
Have you tested with a line just like this:
else if (filePath = "*youtube*") "1080p60YT"

Just to make sure your other requirements aren't messing with you ;)

Asmodian
24th August 2022, 01:52
Sorry the "online" in "if (filePath = "*youtube*") "online" is the profile name right? My 1080p scripts are as follows:
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 31) && (!HDR) "1080p"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) && (!HDR) "1080p60"
else if (filePath = "*youtube*") && (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) && (!HDR) "1080p60YT"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 31) && (HDR) "1080pHDR"
What am I doing wrong?

You need to put the more restrictive conditions first. With your ordering anything 1080p and 30 fps or less will use "1080p" (and 60fps or less "1080p60") because as soon as a condition is valid it uses that one, without checking the rest. Only if the previous condition was false does the next condition get evaluated.

I suggest new ordering. You also don't need to check for not HDR in the last two conditions, because if it was HDR it would already have matched for 1080pHDR. I would also add a new profile for everything that doesn't match any of these because if no conditions match madVR will just use the first profile in the list, but you can point at a specific profile with an else condition if you want things that are 4K or over 61 fps to use a different profile.

if (filePath = "*youtube*") && (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) && (!HDR) "1080p60YT"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 31) && (HDR) "1080pHDR"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 31) "1080p"
else if (srcWidth <= 1925) && (srcHeight <= 1085) && (deintFps < 61) "1080p60"
else "fast"