View Full Version : madVR - high quality video renderer (GPU assisted)
madshi
15th October 2013, 18:46
Unfortunately not. I tested linear light with low and high debanding, no difference visible to me.
Ok, good news, that saves rendering time and options.
But i found out that i also get these brighter areas when i use dithering (it is disabled on my previous screenshots because of better blacks and a reduced filesize).
So maybe my problem is related to dither and not to debanding.
With dithering (and disabled debanding) there is noticeable less banding in my video-sample, so maybe it is not so good for medium dithering-tests anymore, i don't know.
But there are still 2 questions left:
-can i disable dithering when i use low debanding (because both do some debanding),
-are my "dark areas" in my test-images a bug because of missing dithering or is dithering doing something "strange" and create too bright areas?
You should *NEVER* *EVER* disable dithering, especially not when doing anything image quality related. Doing so will introduce banding and quantization errors. If those areas are darker with dithering disabled then that's an error caused by disabled dithering. Dithering is not doing anything strange, it just gets rid of quantization errors on the cost of increased noise floor.
Just think about it yourself: If you have a large image area which after YCbCr -> RGB conversion has an 8bit brightness of e.g. 80.4, then without dithering every pixel in that image area will be rounded down to 80.0. So the average brightness of the whole image area will be 80.0. If you enable dithering (as you should!) some pixels will be drawn as 80.0 and some with 81.0, resulting in an average brightness of 80.4. So only by using dithering you'll get the correct image brightness.
Dithering does not deband anything, it just avoids quantization errors. And quantization errors can *cause* banding artifacts. So enabling dithering doesn't repair/improve anything. It's the other way round: Disabling dithering can introduce severe image artifacts.
It doesn't matter whether you enable debanding or not, you should never disable dithering.
andybkma
16th October 2013, 05:09
You should *NEVER* *EVER* disable dithering, especially not when doing anything image quality related. Doing so will introduce banding and quantization errors.
madshi, quick question since you are on the subject of dithering. I use ffdshow raw video processor as a post processor only with avisynth script "LimitedSharpenfaster" after decoding with LAV before using mVR as the renderer. In the ffdshow raw settings under the RGB Conversion tab there are two options; one for "High Quality YV12 to RGB Conversion" and the other for "Dithering". Should these be checked or unchecked? I am unsure as I thought that mVR does its own conversion and dithering (?) I am only using the avisynth script with the raw ffdshow, nothing else. Thanks much
ryrynz
16th October 2013, 06:02
In the ffdshow raw settings under the RGB Conversion tab there are two options; one for "High Quality YV12 to RGB Conversion" and the other for "Dithering". Should these be checked or unchecked?
Checking these won't change a thing unless you're outputting RGB, which you shouldn't be, doing so will actually decrease quality.
If you ever needed to output RGB then most certainly you'd want these ticked, without them enabled the image quality is quite bad.
Check with madVR (Ctrl-J fourth line) it should show YV12 or NV12, personally I stick with YV12.
I don't believe MadVR benefits any from working with NV12, so it's a waste of resources converting to it.
THX-UltraII
16th October 2013, 06:48
I m not talking about the problem FULL and LIMITED. This already works out-of-the-box with the latest Intel driver (you can simply select AUTO, FULL or LIMITED in the Intel Control Panel and it works perfect).
I am talking about huhn saying that Intel cards output ycbcr and not rgb and that this is supposed to affect PQ in a bad way when using madVR.can you come back on this subject huhn?
Francois76l
16th October 2013, 10:34
Hello Madshi!
First, thanks for your amazing work along the years!
I've one question concerning the smooth motion option under madVr v0.86.11.
On my computer (i7 3770k @4.6Ghz + 660GTX Ti + 8Go ram) The picture quality is bad with this option (@60Hz). There is no difference in the picture fluidity and sometimes I can see some frame doubling. It's really strange.
I'm using Windows 7 Pro N (special version without Windows Media Player and Media Center) Do you think my problem can be link?
Thanks again for your help
++
huhn
16th October 2013, 17:59
can you come back on this subject huhn?
ok i try it.
i said output YCbCr is not the ideal way because you asked about a way to output this because you heard you ~beamer?~ got problems with rgb right?
so i talked about about a way to output YCbCr with madvr because i heard it's possible (i still don't know it's true).
so madvr outputs 8 bit 0-255 rgb at default settings. if your gpu outputs rgb unlimited noting should happen.
so i don't know what your plan is right now.
are you going with your new amd card or not.
than there was something about rgb YCbCr output in intel.
you can just switch to both in the driver (never heard that this is not working)
but outputing rgb 0-255 was a or is a problem with intel there is no option for this (something about "it"or normal content but this does nothing...) and it's a well known problem.
don't mix that up with video output 16-235 or 0-255.
even if you are going to use limited rgb you still have to use a 16-235 to 0-255 (madvr does this y default) because the desktop is 0-255 and both together needs to be limited again. not the best way to do this but yeah there are plenty of people in this forum with much better english and much better knowledge of this topic then me.
so what's your problem in the detail?
nautilus7
16th October 2013, 23:52
Hi, nice to see the development is going on! Nice things are coming all the time!
I need your help selecting a good yet not expensive videocard for use with madvr. I need cuda so I am looking for an nvidia. Is a gtx 650 Ti Boost a good one for madvr? Do you recomend another one at this range of money?
huhn
17th October 2013, 00:31
why cuda dxva is much faster and near if not everything what works with cuda works with dxva too and this leaves more breathing room for madvr.
660 ti 1344 cuda cores 185 €
650 ti 768 cuda cores 140 €
i think the 650 ti is very bad for it's money.
you may look at the new amd gpu
edit: or have a look at an richland apu
detmek
17th October 2013, 16:46
What do you mean, dxva is much faster? DXVA and CUVID use the same ASIC. There may be some differences but "much faster" is simply not true. Also, madVR does not use ASIC but shaders (main GPU) so there is no competition for same resources between madVR and decoding.
shimaflarex
17th October 2013, 16:53
there is no competition for same resources between madVR and decoding
They both compete for VRAM (bandwidth and memory usage).
nautilus7 said he needed CUDA(not CUVID). He may want to use CUDA for other proposes besides video decoding/encoding.
baii
17th October 2013, 17:17
Not sure about decoding, but hw deinterlacing definitely use up some noticeable gpu power.
huhn
17th October 2013, 17:18
CUVID forces the gpu in max power state and is more like dxva copy back.
nautilus7 said he needed CUDA(not CUVID). He may want to use CUDA for other proposes besides video decoding/encoding.
very good point
e-t172
17th October 2013, 21:31
What do you mean, dxva is much faster? DXVA and CUVID use the same ASIC. There may be some differences but "much faster" is simply not true.
When using CUVID and DXVA copy-back the decoded video passes back and forth between the GPU and the CPU (well, between video memory and main memory, to be precise). With DXVA native the video stays on the GPU from decoding to rendering, which makes it somewhat faster.
SoulSmasher
17th October 2013, 22:25
Hi,
I've a problem, hope you can help me.
Ever since I've updated to Windows 8.1, when I go to exclusive mode with MPC-HC (using LAV filters), I get a red message saying "out of memory" in a red font in a black frame, but the video runs fine.
Here's a sample screenshot (sorry, the frame is not shown in screenshot, I don't know why).
http://imgur.com/YHlXJ4X
What could be the issue? And how do I fix this? I've already re-installed LAV filters, it's still same.
Edit: Weirdly, after re-installing (clean) the NVidia driver (although it was showing official driver is already installed at GeForce Experience panel), it's fixed.
Thanks again for the awesome renderer!
detmek
17th October 2013, 23:29
When using CUVID and DXVA copy-back the decoded video passes back and forth between the GPU and the CPU (well, between video memory and main memory, to be precise). With DXVA native the video stays on the GPU from decoding to rendering, which makes it somewhat faster.
Depends on GPU. On my Nvidia 9500GT (a bit old card) DXVA Native gives me highest rendering times with madVR, and DXVA Copy-back lowest. CUVID is in the middle if we compare rendering times.
On the other hand, I was talking about decoding speed on ASIC which is basically the same for any method. So, it is not "much faster", that is all I wanted to comment.
Also, sometimes it is better to put GPU in max power mode because some users reported frame drops because GPU goes to lower power mod and does not have power for madVR rendering job.
madshi
17th October 2013, 23:48
I've one question concerning the smooth motion option under madVr v0.86.11.
On my computer (i7 3770k @4.6Ghz + 660GTX Ti + 8Go ram) The picture quality is bad with this option (@60Hz). There is no difference in the picture fluidity and sometimes I can see some frame doubling. It's really strange.
Are you using Windows mode, Overlay mode or Fullscreen Exclusive Mode? For some people, smooth motion only really reliably works in Fullscreen Exclusive Mode. So try whether that fixes the problem. If not, does the OSD report presentation glitches or dropped frames?
Edit: Weirdly, after re-installing (clean) the NVidia driver (although it was showing official driver is already installed at GeForce Experience panel), it's fixed.
Yeah, weird...
-------------------------
I've found a quite promising new tweak for the debanding algorithm. So all ya debanding geeks out there, here's a new test build:
http://madshi.net/madVRdeband6.rar
The new feature is called "angleBoost" and you can control it via Ctrl+Alt+F9/F10 (decrease/increase) and Ctrl+Alt+Shift+F9/F10 (off/on). This feature checks whether the surrounding pixels all have the same gradient angle. If they do, the other parameters (avgDif, maxDif etc) are all multiplied with the "angleBoost" factor. So a factor of 1.0 means no change. A factor of 2.0 means double parameters.
It seems that this new feature might be able to separate details from gradients, so I hope we'll get a nice debanding improvement without losing any image detail. On the content I've tried so far an angleBoost of 2.0 seems to work quite nicely, although that might be a tad too high. Let me know what you think...
P.S: The angleBoost feature does consume a bit of additional rendering power. But from my first tests it seems to be more than worth it.
nautilus7
18th October 2013, 00:12
660 ti 1344 cuda cores 185 €
650 ti 768 cuda cores 140 €
i think the 650 ti is very bad for it's money.
Not exactly, my friend.
660 Ti 1344 cores ~235€
660 960 cores ~175€
650 Ti Boost 768 cores ~160€
650 Ti 768 cores ~125€
nautilus7 said he needed CUDA(not CUVID). He may want to use CUDA for other proposes besides video decoding/encoding.Yes, exactly.
Any recomendation?
huhn
18th October 2013, 02:58
sry in germany you can get a 660 ti for 185
235 wow ...
in your case the 650 ti NON boost.
or think about an import
6233638
18th October 2013, 05:12
I've found a quite promising new tweak for the debanding algorithm. So all ya debanding geeks out there, here's a new test build:
http://madshi.net/madVRdeband6.rar
The new feature is called "angleBoost" and you can control it via Ctrl+Alt+F9/F10 (decrease/increase) and Ctrl+Alt+Shift+F9/F10 (off/on). This feature checks whether the surrounding pixels all have the same gradient angle. If they do, the other parameters (avgDif, maxDif etc) are all multiplied with the "angleBoost" factor. So a factor of 1.0 means no change. A factor of 2.0 means double parameters.
It seems that this new feature might be able to separate details from gradients, so I hope we'll get a nice debanding improvement without losing any image detail. On the content I've tried so far an angleBoost of 2.0 seems to work quite nicely, although that might be a tad too high. Let me know what you think...
P.S: The angleBoost feature does consume a bit of additional rendering power. But from my first tests it seems to be more than worth it.I might not get a chance to do much testing until the weekend now, but I'll do what I can.
Can we get a build which lets us customize the keyboard shortcuts though? I find them increasingly difficult to use.
I'd much rather be using QA, WS, ED, RF etc.
AngelGraves13
18th October 2013, 07:20
Are you using Windows mode, Overlay mode or Fullscreen Exclusive Mode? For some people, smooth motion only really reliably works in Fullscreen Exclusive Mode. So try whether that fixes the problem. If not, does the OSD report presentation glitches or dropped frames?
Yeah, weird...
-------------------------
I've found a quite promising new tweak for the debanding algorithm. So all ya debanding geeks out there, here's a new test build:
http://madshi.net/madVRdeband6.rar
The new feature is called "angleBoost" and you can control it via Ctrl+Alt+F9/F10 (decrease/increase) and Ctrl+Alt+Shift+F9/F10 (off/on). This feature checks whether the surrounding pixels all have the same gradient angle. If they do, the other parameters (avgDif, maxDif etc) are all multiplied with the "angleBoost" factor. So a factor of 1.0 means no change. A factor of 2.0 means double parameters.
It seems that this new feature might be able to separate details from gradients, so I hope we'll get a nice debanding improvement without losing any image detail. On the content I've tried so far an angleBoost of 2.0 seems to work quite nicely, although that might be a tad too high. Let me know what you think...
P.S: The angleBoost feature does consume a bit of additional rendering power. But from my first tests it seems to be more than worth it.
Setting view does not go away. If I enable it, it just floats forever on top of the picture.
madshi
18th October 2013, 08:56
I might not get a chance to do much testing until the weekend now, but I'll do what I can.
Can we get a build which lets us customize the keyboard shortcuts though? I find them increasingly difficult to use.
I'd much rather be using QA, WS, ED, RF etc.
Sorry, no easy way to customize the keyboard shortcuts. What is so hard about using them?
I've intentionally released this test build *before* the weekend, so that you guys have it before the weekend starts, so no part of the weekend is lost... :)
Setting view does not go away. If I enable it, it just floats forever on top of the picture.
That is intentional for the test builds. It stays on for 20 seconds. The purpose is that you have a lot of time to play with the parameters. If it went away after 3-4 seconds, like all other OSD messages, that would make tweaking the parameters more difficult. The OSD message will be cut down to 3-4 seconds when the next official build is released.
6233638
18th October 2013, 09:31
Sorry, no easy way to customize the keyboard shortcuts. What is so hard about using them?Well I don't have a number pad or function keys on my keyboard for one thing. So Ctrl+Alt+Shift+F9 means I'm pressing five keys at once. (F9 becomes Fn+9)
I can touch-type, but I have difficulty doing Ctrl+Alt+Shift 1-9 without looking at the keyboard, instead of looking at the screen while making adjustments.
With AltGr instead of Ctrl+Alt, and something like
QWERT: +
ASDFG: −
ZXCVB: on/off
You're only ever pressing two keys, and shouldn't have to look at the keyboard.
madshi
18th October 2013, 09:44
Well, there aren't so many letter keys left which are next to each other and not already in use by default madVR settings. Ok, I've modified F9/F10 to K/L now. But I don't have a replacement for the number keys.
http://madshi.net/madVRdeband7.rar
This build also has a bugfix in it, so please everybody who uses the debanding test build update to this one. The keys for the "angleBoost" are now Ctrl+Alt+K/L and Ctrl+Alt+Shift+K/L.
ryrynz
18th October 2013, 10:09
Angleboost is amazing.
Here's my offer for the low preset.
6233638, I have tested this vs your previous preference and have found these settings provide better debanding and much improved shadow detail retention.
It could probably still tweak a bit here and there like anything, but overall I'm quite impressed. A excellent find with this setting Madshi!
After some more testing I conclude Localcontrast is not required for great results.
avgDif maxDif grad penalty localcontrast angleboost
low: 0.6 2.4 1.0 1.2 off 2.0
This build also has a bugfix in it
What was fixed? does it affect picture quality?
madshi
18th October 2013, 10:15
Angleboost is amazing.
:D
FWIW, the AngleBoost feature isn't perfect. It misses some parts where debanding should be applied. So we should make sure that we don't lower the other parameters too much. The other parameters should still do useful debanding even without AngleBoost. Maybe your suggested settings already do, haven't checked. Just wanted to say...
What was fixed? does it affect picture quality?
I had nonGradiantPenalty and localContrast swapped in the OSD. Meaning if the OSD claimed you had localContrast off, you actually had nonGradiantPenalty off and vice versa. I'm sorry about the confusion! :o
ryrynz
18th October 2013, 11:12
:D
FWIW, the AngleBoost feature isn't perfect. It misses some parts where debanding should be applied. So we should make sure that we don't lower the other parameters too much. The other parameters should still do useful debanding even without AngleBoost. Maybe your suggested settings already do, haven't checked. Just wanted to say...
Maybe not but it made it jump up to a whole new level, I will continue to tinker with it, I'm hoping madVR can have the low preset enabled by default.
I had nonGradiantPenalty and localContrast swapped in the OSD. Meaning if the OSD claimed you had localContrast off, you actually had nonGradiantPenalty off and vice versa. I'm sorry about the confusion! :o
Ah that explains the lack of difference I saw with localcontrast disabled.. anyway did another test with build 7 and I'm on the fence regarding localcontrast, it does so little I'm not sure it's worth having.
I might enable if it was an available option and I had the GPU power for it, I'm not going to push for the option to be there though, have adjusted my preset accordingly.
Making a comparison vs my old f3kd settings shows my current low preset providing vastly better detail retention whilst maintaining about the same deband strength, awesome stuff.
Ver Greeneyes
18th October 2013, 12:26
FWIW, the AngleBoost feature isn't perfect. It misses some parts where debanding should be applied. So we should make sure that we don't lower the other parameters too much.
It might not matter much, but have you concidered changing AngleBoost from a binary threshold to a continuum? i.e. use the degree to which the angles match (from -100% to 100% say) to decide how much to boost or penalize the strength of the other settings?
(you could even apply a knee strength setting to the result, like in dynamic range compression (https://en.wikipedia.org/wiki/Dynamic_range_compression#Soft_and_hard_knees), but that's probably getting too fancy for how much good it'll do)
madshi
18th October 2013, 12:52
So two suggestions:
(1) penalty vs. boost: I think a penalty for non-matching angles would make things too complicated. Sometimes the angles don't match, but still debanding is needed. So I think a pure boost is a better solution. This way we can set up the other thresholds to do a minimum of debanding in case the angles don't match, and we can rely on that this minimum amount of debanding is always applied.
(2) binary threshold vs continuum: I've actually thought about this, too. All the other thresholds are already applied with "FuzzyLogic" (continuum instead of binary threshold, using a simplified knee strength algorithm). The AngleBoost is currently a binary threshold. I could make the AngleBoost non-binary, too, but I'm not sure if I should do that. FWIW, there are 4 surrounding pixels I have to take into account (each with its own angle), that makes it different to find a continuum formula which covers all the possible situations. But I'll go experiment a little, maybe I can find a solution which works well enough...
madshi
18th October 2013, 14:53
Ok, here's the latest build:
http://madshi.net/madVRdeband8.rar
Changes:
(1) The AngleBoost is now of variable strength, depending on how much the angle differs (suggested by Ver Greeneyes).
(2) You can now define both the AngleBoost strength (Ctrl+Alt+H/J), and also the "MaxAngle" for with the boost is applied (Ctrl+Alt+K/L).
(3) You can still turn the AngleBoost completely on/off (Ctrl+Alt+Shift+H/J).
(4) You can activate a debug mode (Ctrl+Alt+Shift+K/L) which shows to which image areas the AngleBoost is applied. White image areas get the full boost. Black image areas don't get any boost. Gray areas get a reduced boost. That should help figuring out the optimal "MaxAngle".
The current default values are "AngleBoost = 2.0" and "MaxAngle = 0.2". Practically this means that if the angle of a gradient differs by up to 13.333%, all thresholds are multiplied by 2x. If the angle differs by 20%, all thresholds are unchanged. If the angle differs by a value between 13.333% and 20% the thresholds are multiplied by a value between 1.0 (20%) and 2.0 (13.333%). For example, an angle difference of 15% would result in a threshold boost of 1.75x.
My first tests indicate that for some gradients the "MaxAngle" could be set as low as 0.01. However, for other gradients, we need at least 0.10-0.15. Maybe even 0.20. Let me know what you think.
Francois76l
18th October 2013, 15:18
Hello Madshi!
First, thanks for your amazing work along the years!
I've one question concerning the smooth motion option under madVr v0.86.11.
On my computer (i7 3770k @4.6Ghz + 660GTX Ti + 8Go ram) The picture quality is bad with this option (@60Hz). There is no difference in the picture fluidity and sometimes I can see some frame doubling. It's really strange.
I'm using Windows 7 Pro N (special version without Windows Media Player and Media Center) Do you think my problem can be link?
Thanks again for your help
Are you using Windows mode, Overlay mode or Fullscreen Exclusive Mode? For some people, smooth motion only really reliably works in Fullscreen Exclusive Mode. So try whether that fixes the problem. If not, does the OSD report presentation glitches or dropped frames?
Hello Madshi. Thanks for your answer.
I've no dropped frames and no glitches (ctrl+j) and I'm using Fullscreen Exclusive Mode. Sorry for my poor explanations in my first question.
I'm using MPC-BE + LAV Splitter + LAV Video decoder (8 bits YV12 output) + ffdshow with some avisynth scripts (4:4:4 AYUV output) + MadVr 0.86.11
On Madvr:
- Chroma upscaling Jinc 3taps + anti ringing
- Image downscaling Jinc 8taps + anti ringing
- Nothing in "Trade quality for performance"
- Smooth motion On...
- CPU queue size: 12 / GPU: 8
I've also remarked 1 thing. On my Benq W1070 if I output 16 bits colorspace (P016, P216 or Y416) my black are little grayed compared to a 8 bits output. am I crazy? :confused:
Thanks again for your explanations Madshi!
Werewolfy
18th October 2013, 16:34
Ok, here's the latest build:
http://madshi.net/madVRdeband8.rar
Changes:
(1) The AngleBoost is now of variable strength, depending on how much the angle differs (suggested by Ver Greeneyes).
(2) You can now define both the AngleBoost strength (Ctrl+Alt+H/J), and also the "MaxAngle" for with the boost is applied (Ctrl+Alt+K/L).
(3) You can still turn the AngleBoost completely on/off (Ctrl+Alt+Shift+H/J).
(4) You can activate a debug mode (Ctrl+Alt+Shift+K/L) which shows to which image areas the AngleBoost is applied. White image areas get the full boost. Black image areas don't get any boost. Gray areas get a reduced boost. That should help figuring out the optimal "MaxAngle".
The current default values are "AngleBoost = 2.0" and "MaxAngle = 0.2". Practically this means that if the angle of a gradient differs by up to 13.333%, all thresholds are multiplied by 2x. If the angle differs by 20%, all thresholds are unchanged. If the angle differs by a value between 13.333% and 20% the thresholds are multiplied by a value between 1.0 (20%) and 2.0 (13.333%). For example, an angle difference of 15% would result in a threshold boost of 1.75x.
My first tests indicate that for some gradients the "MaxAngle" could be set as low as 0.01. However, for other gradients, we need at least 0.10-0.15. Maybe even 0.20. Let me know what you think.
I did some tests with your latest build and AngleBoost seems to be a great idea! It allows a better debanding with less details blurred. A value of 0.20 for MaxAngle seems to be a good choice, I found one case where 0.15 is not enough and no case where 0.20 is too low.
Here are my settings for low :
avgDif 0.6, maxDif : 2.0, gradient 1.3, nonGradientPenalty : 1.2, localContrast ; off, angleBoost : 2.0, maxAngle : 0.20 .
1.0 for gradient is not enough sometimes like I saw in a earlier post and we can lower maxDif at 2.0. The debanding is better than before with my low settings (0.7, 2.4, 1.5, 1.2, off) and details are better preserved.
Great job madshi ;)
mandarinka
18th October 2013, 18:46
This might eventually become interesting for smooth video playback, in the future: http://www.pcper.com/news/Graphics-Cards/NVIDIA-Announces-G-Sync-Variable-Refresh-Rate-Monitor-Technology
Basically it makes the rendering on an LCD fully VFR. Sadly, it needs special logic in the monitor, might be nvidia-only feature, and what's worst, will cost extra (so it might end up in highend devices only).
bacondither
18th October 2013, 20:17
The new angleBoost algorithm seems to work good some times and bad other times. Especially it seems to blur sharp dark lines alot, and it seems to detect dark grey flat colored boxes as gradients.
It seems to be effective at removing banding in heavy banded material at the expense of blurring sharp dark details.
I would prefer it off on a low deband setting and maby turn it on at medium or high.
I've concocted a test image with some dark boxes of different sizes and a banded gradient:
Test image (http://postimg.org/image/ji5bmz85d/full/)
Contrast boosted (easier to spot differences) images with different settings on the previously mentioned test image:
No debanding (http://postimg.org/image/gww2ihkgd/full/)
(My prefered settings "low") avgDif0.7, maxDif 2.4, gradient 1.5, nonGradientPenalty 1.2, localcontrast off, angleBoost off (http://postimg.org/image/qcs2ivfdv/full/)
avgDif0.7, maxDif 2.4, gradient 1.5, nonGradientPenalty 1.2, localcontrast off, angleBoost 2.0, maxAngle 0.20 (http://postimg.org/image/9xbmnaeef/full/)
avgDif0.6, maxDif 2.0, gradient 1.3, nonGradientPenalty 1.2, localcontrast off, angleBoost 2.0, maxAngle 0.20 (http://postimg.org/image/dkzk71osx/full/)
avgDif0.6, maxDif 2.0, gradient 1.3, nonGradientPenalty 1.2, localcontrast off, angleBoost 2.0, maxAngle 0.01 (http://postimg.org/image/dg6ne9sk7/full/)
angleBoost debug mode (http://postimg.org/image/w87o0rb8j/full/)
/Addendum
I was looking for a medium setting and made a full screen gradient with <7-bit (<127 steps) to simulate bitdeph loss. And i found that the settings below was sufficient to smooth the stairstep gradient to a continuous smooth gradient.
My suggestion for medium debanding:
avgDif 1.1, maxDif 3.0, gradient 2.5, nonGradientPenalty 1.3, localContast off, angleBoost off
Werewolfy
18th October 2013, 21:23
I haven't seen this issue... Does it do that even with lower values? 2.0 for angleBoost is maybe too much.
Can you send here your test video?
iSunrise
18th October 2013, 22:41
This might eventually become interesting for smooth video playback, in the future: http://www.pcper.com/news/Graphics-Cards/NVIDIA-Announces-G-Sync-Variable-Refresh-Rate-Monitor-Technology
Basically it makes the rendering on an LCD fully VFR. Sadly, it needs special logic in the monitor, might be nvidia-only feature, and what's worst, will cost extra (so it might end up in highend devices only).
Damn youīre fast. Also wanted to post it and ask madshi, what he thinks this could mean regarding madVR and video playback.
Since Nvidia hasnīt yet detailed how exactly G-Sync operates (they said it switches to 3D-Mode) it seems a bit early to tell. However, since madVR basically behaves like a game that uses a D3D-variant and supports fullscreen exklusive, this seems like a no-brainer at first.
Perfectly smooth playback with any input fps at (hopefully) sanely priced monitors (as long as the panel is fast enough) just seems too good to be true.
e-t172
18th October 2013, 23:38
Yes, G-SYNC seems very exciting. What's more, that would probably mean that the application has full control over the display clock and is not constrained by the video clock anymore, which would remove audio/video clock drift issues and thus render ReClock completely useless!
turbojet
18th October 2013, 23:52
It would be nice if nvidia worked with competitors on a standard. So we don't get 3 different technologies programs need to support which reduces the chances of supporting it. Then of course we'll probably get some things that only support one technology (paid off?). Comparable to cuvid, quicksync and opencl vs dxva.
avgDif maxDif grad penalty contrast
low: 0.7 2.4 1.6 1.2 1.4
maximum: 1.9 3.7 4.3 off off
Maximum is giving me really nice results without any noticeable banding in normal viewing. It's surprising how much improvement it gives to the not so great material (US HDTV) I watch, much more than f3kdb. Good work!
madshi
19th October 2013, 01:18
I've no dropped frames and no glitches (ctrl+j) and I'm using Fullscreen Exclusive Mode.
Have you tried this only on your projector or also on your computer monitor? I'm not sure why SmoothMotion FRC doesn't seem to work as well as you expect on your projector. It could be that something is not working as intended. But maybe also your expectations are too high? SmoothMotion FRC does *NOT* aim to make the source material smoother than it is. All SmoothMotion FRC tries to do is present the original content exactly as it was shot. Native 24p content is not fully smooth by itself. Especially fast horizontal camera pans must judder (unless they're blurred like crazy). And SmoothMotion FRC doesn't even try to improve that.
Please try playing the 24fps Smooth Motion test patterns (see madTestPatternSource download in the first post of this thread) with your projector set to 60Hz. Play that test pattern and then toggle SmoothMotion FRC between on and off during playback, ideally with keyboard shortcuts. Do you see a difference in smoothness that way? It should be smoother with SmoothMotion FRC on. But it will still not be perfectly smooth because 24fps cannot be perfectly smooth.
I've also remarked 1 thing. On my Benq W1070 if I output 16 bits colorspace (P016, P216 or Y416) my black are little grayed compared to a 8 bits output. am I crazy? :confused:
You have a complicated setup with ffdshow and avisynth in between. Try disabling all that extra processing to see if that fixes the gray blacks. If it does, something is wrong with your ffdshow/avisynth/madVR configuration.
This might eventually become interesting for smooth video playback, in the future: http://www.pcper.com/news/Graphics-Cards/NVIDIA-Announces-G-Sync-Variable-Refresh-Rate-Monitor-Technology
Basically it makes the rendering on an LCD fully VFR. Sadly, it needs special logic in the monitor, might be nvidia-only feature, and what's worst, will cost extra (so it might end up in highend devices only).
I'm not sure if this allows changing the refresh rate dynamically, all the time. Or maybe whether it just allows the monitor to support any refresh rate (but not dynamic switching).
It would be nice if nvidia worked with competitors on a standard. So we don't get 3 different technologies programs need to support which reduces the chances of supporting it. Then of course we'll probably get some things that only support one technology (paid off?). Comparable to cuvid, quicksync and opencl vs dxva.
Very true and I fully agree. NVidia already tried to sell their own 3D technology and IMHO it utterly failed. Now I hear that this G-Sync will come with license costs etc. So there will not be an open standard which AMD and Intel get join. No thanks, doesn't sound interesting for me.
What I'd like to see is for the driver to support very small changes to the pixel clock without a full mode reset. That would truely render ReClock useless (unless you want to modify the source fps), and it should work with most displays without any changes. That would be a much better solution for video playback. G-Sync is aimed at gamers, not at HTPC users.
I did some tests with your latest build and AngleBoost seems to be a great idea! It allows a better debanding with less details blurred. A value of 0.20 for MaxAngle seems to be a good choice, I found one case where 0.15 is not enough and no case where 0.20 is too low.
Here are my settings for low :
avgDif 0.6, maxDif : 2.0, gradient 1.3, nonGradientPenalty : 1.2, localContrast ; off, angleBoost : 2.0, maxAngle : 0.20 .
1.0 for gradient is not enough sometimes like I saw in a earlier post and we can lower maxDif at 2.0. The debanding is better than before with my low settings (0.7, 2.4, 1.5, 1.2, off) and details are better preserved.
Great job madshi ;)
Glad to hear you like it!
Maximum is giving me really nice results without any noticeable banding in normal viewing. It's surprising how much improvement it gives to the not so great material (US HDTV) I watch, much more than f3kdb. Good work!
:)
The new angleBoost algorithm seems to work good some times and bad other times. Especially it seems to blur sharp dark lines alot, and it seems to detect dark grey flat colored boxes as gradients.
It seems to be effective at removing banding in heavy banded material at the expense of blurring sharp dark details.
I would prefer it off on a low deband setting and maby turn it on at medium or high.
I've concocted a test image with some dark boxes of different sizes and a banded gradient:
Test image (http://postimg.org/image/ji5bmz85d/full/)
Contrast boosted (easier to spot differences) images with different settings on the previously mentioned test image:
No debanding (http://postimg.org/image/gww2ihkgd/full/)
(My prefered settings "low") avgDif0.7, maxDif 2.4, gradient 1.5, nonGradientPenalty 1.2, localcontrast off, angleBoost off (http://postimg.org/image/qcs2ivfdv/full/)
avgDif0.7, maxDif 2.4, gradient 1.5, nonGradientPenalty 1.2, localcontrast off, angleBoost 2.0, maxAngle 0.20 (http://postimg.org/image/9xbmnaeef/full/)
avgDif0.6, maxDif 2.0, gradient 1.3, nonGradientPenalty 1.2, localcontrast off, angleBoost 2.0, maxAngle 0.20 (http://postimg.org/image/dkzk71osx/full/)
avgDif0.6, maxDif 2.0, gradient 1.3, nonGradientPenalty 1.2, localcontrast off, angleBoost 2.0, maxAngle 0.01 (http://postimg.org/image/dg6ne9sk7/full/)
angleBoost debug mode (http://postimg.org/image/w87o0rb8j/full/)
/Addendum
I was looking for a medium setting and made a full screen gradient with <7-bit (<127 steps) to simulate bitdeph loss. And i found that the settings below was sufficient to smooth the stairstep gradient to a continuous smooth gradient.
My suggestion for medium debanding:
avgDif 1.1, maxDif 3.0, gradient 2.5, nonGradientPenalty 1.3, localContast off, angleBoost off
I'm not sure if your test image qualifies for showing up problems with AngleBoost. Why would those dark gray boxes classify as "image detail" and not as "banding"? Do you consider them "image detail" because they are "closed" at the bottom and top, forming them into a geometrical rectangle? What would you say if the same shades of gray would go from the bottom to the top of the screen, resulting in vertical stripes alternating between black and very dark? Would that still be "image detail" or would you consider that "banding"?
From my point of view large flat image areas which are barely different from neighboring large flat image areas are more likely to be "banding" than "image detail". Image detail usually contains a little bit of contrast, a little bit of per pixel changes, a little bit of angles/curves/edges in it. There's nothing of that in your large flat barely visible gray boxes. Because of that I don't think those boxes can be considered "image detail".
Can you provide a real life sample (or 2 or 3) which shows the following problems:
> Especially it seems to blur sharp dark lines alot,
> and it seems to detect dark grey flat colored
> boxes as gradients.
> It seems to be effective at removing banding
> in heavy banded material at the expense of
> blurring sharp dark details.
Having a sample (or 2 or 3) which show these problems would be really useful. Maybe I can find a way to improve the AngleBoost feature accordingly.
There's one thing making me wonder, though: In your "debug" mode image it seems that only the left border of your gray boxes is detected at all, but not the right border. That's weird, will look into that. Doing so will not change the final output, though.
iSunrise
19th October 2013, 01:52
I'm not sure if this allows changing the refresh rate dynamically, all the time. Or maybe whether it just allows the monitor to support any refresh rate (but not dynamic switching).
According to the demos and setups they have used at the event, you can do dynamic changes as well as keep a steady and constant refresh locked.
Hereīs a video of it:
http://www.youtube.com/watch?v=WiZ9l3I26ec
The one clear advantage I see is that you could drive G-SYNC equipped monitors at native movie refresh rates (where you would have to buy much more expensive monitors like Eizo CGs) or even some movie refresh rate multiples that are only available with the G-Sync module. Thatīs because the module completely replaces the scaler component inside the monitor and the GPU and pixel clock drives it. And depending how well they implemented it, this could also lead to other side-benefits like the ones you mentioned (smaller variations in pixel clocks, since they will possibly do a bit of a rewrite of that part of the driver). Maybe there are even more benefits we donīt even know about, more details will probably be available on the 21st and if it works like they made it sound, it seemed like you wouldnīt even need to adjust anything within madVR, since it behaves like a game, but who knows at this point.
I agree though that an open standard would have been nice, too.
BTW, love the new deband, even though I donīt watch a lot of Anime and I am certainly not the prime target for this.
6233638
19th October 2013, 03:52
I'm not sure if this allows changing the refresh rate dynamically, all the time. Or maybe whether it just allows the monitor to support any refresh rate (but not dynamic switching).As I understood it, G-Sync means that the display's refresh rate is controlled by the graphics card - when a new frame is drawn, the display updates.
This allows you to avoid screen tearing without increasing latency or limiting framerates. (e.g. locking to 30 or 60fps)
EDIT: Yes, it's continuously variable and synced to the framerate: http://www.youtube.com/watch?v=WiZ9l3I26ec
That said, I'm not sure how uneven framerates, even with the refresh rate synced, and without tearing, are going to avoid judder.
Very true and I fully agree. NVidia already tried to sell their own 3D technology and IMHO it utterly failed. Now I hear that this G-Sync will come with license costs etc. So there will not be an open standard which AMD and Intel get join. No thanks, doesn't sound interesting for me.LightBoost monitors seem to be in high demand from PC gamers - they are significantly better than any other display on the market when it comes to latency and motion handling. The only other comparable displays are CRTs.
turbojet
19th October 2013, 07:02
Found a clip (http://www.sendspace.com/file/mkudbg) where 'maximum' really damaged the video, specifically gradient. There's a very large difference between gradient 2.3 and 2.4 on this and other random scenes.
leeperry
19th October 2013, 07:43
Can't wait for you guys to find settings for a "free lunch" deband as the existing solutions have always been a let down for me....I guess the 8bit AVS pipeline doesn't help but my colorblind condition doesn't allow me to nitpick about banding as you guys have been doing for the past few days ^^
LightBoost monitors seem to be in high demand from PC gamers - they are significantly better than any other display on the market when it comes to latency and motion handling.
Strangely, a friend of mine measures a miserable 300:1 CR once that 2D Lightboost trick is enabled....he measures 1K:1 in 60Hz and tells me that contrast is truly horrid in 120Hz, figures.
The one clear advantage I see is that you could drive G-SYNC equipped monitors at native movie refresh rates
I don't really see what the problem is when you have a 120Hz display as it's a multiple of 24 & 30 but I guess some ppl might also care for 25fps.
660 Ti 1344 cores ~235€
660 960 cores ~175€
650 Ti Boost 768 cores ~160€
650 Ti 768 cores ~125€
Your price list looks dated to me, a brand new 660 cost 135€ shipped around here and you can easily sell the game licenses ;)
6233638
19th October 2013, 08:51
Well angleBoost and the tuning certainly changes things up a bit.
I'm not sure if your bugfixes are what's caused it, or because I'm using angleBoost now, but I'm finding it difficult to have settings which show no detail loss.
What do people think of this for a Low preset?
avgDif maxDif grad Penalty LC Boost maxAngle
0.6 2.2 1.4 1.2 off 1.2 0.10
Can't wait for you guys to find settings for a "free lunch" deband as the existing solutions have always been a let down for me....I guess the 8bit AVS pipeline doesn't help but my colorblind condition doesn't allow me to nitpick about banding as you guys have been doing for the past few daysI don't think there will be such a thing as a "free lunch" debanding option. If you look really closely at some source, you can find examples of even very low settings resulting in some detail loss.
Strangely, a friend of mine measures a miserable 300:1 CR once that 2D Lightboost trick is enabled....he measures 1K:1 in 60Hz and tells me that contrast is truly horrid in 120Hz, figures.I suspect that his instrumentation cannot handle the refresh rate, but it's always possible. I haven't looked into that aspect because the color quality is really bad on those displays anyway. The point is that you get the absolute best latency and response times - which is what matters for competitive gaming - at the cost of all else.
I don't really see what the problem is when you have a 120Hz display as it's a multiple of 24 & 30 but I guess some ppl might also care for 25fps.Well the point is that it's dynamic so you no longer have refresh rates, you just run the video at the native framerate. Depending on how precise this is, you could potentially do without ReClock/VideoClock and sync up the video to the audio clock.
Found a clip (http://www.sendspace.com/file/mkudbg) where 'maximum' really damaged the video, specifically gradient. There's a very large difference between gradient 2.3 and 2.4 on this and other random scenes.I would say that's a candidate for low or medium settings, not high.
bacondither
19th October 2013, 09:26
What do people think of this for a Low preset?
avgDif maxDif grad Penalty LC Boost maxAngle
0.6 2.2 1.4 1.2 off 1.2 0.10
Looks good! Yes angleBoost seems usable with settings <1.5.
Will do some more knob turning and report back. :)
madshi
19th October 2013, 09:39
Hey guys,
I'm sorry, but I found a serious bug in the AngleBoost algorithm. Basically when waking up in my bed this morning and thinking about why only the left border of bacondither's blocks were detected in the debug image, I suddenly knew that I forgot to add an "abs()" in the algorithm in a key place. This missing "abs" means that one half of all possible angles were considered "identical", which of course resulted in the boost being applied too often. This also resulted in "AngleBoost" still doing a lot of stuff even if you set the "maxAngle down to 0.01", which had really surprised me originally, anyway. So here's a fixed build:
http://madshi.net/madVRdeband9.rar
Maybe AngleBoost now works better?
Boltron
19th October 2013, 10:58
You're Fired!
:devil:
6233638
19th October 2013, 11:04
Well it looks like that's what was causing the detail loss I mentioned. I thought it seemed like a lot more than previous builds.
Assuming that I only need to change my Angle Boost settings for this build, these seem approximately the same as my previous ones, though I'd have to go back over everything to be sure. (only checked a few samples)
avgDif maxDif grad Penalty LC Boost maxAngle
0.6 2.2 1.4 1.2 off 2.2 0.10
maxAngle may be slightly weaker now though, I'm not certain.
Something I was wondering though - when a video is paused, the dither pattern seems to change every second. Is it possible to update it at the refresh rate? Sometimes there's banding which is difficult to see until the dither pattern changes, and I find myself quickly toggling the settings +/- 0.1 to check as that forces the dither to change.
madshi
19th October 2013, 12:38
You're Fired!
:devil:
Oh noes! :scared:
Well it looks like that's what was causing the detail loss I mentioned. I thought it seemed like a lot more than previous builds.
Assuming that I only need to change my Angle Boost settings for this build, these seem approximately the same as my previous ones, though I'd have to go back over everything to be sure. (only checked a few samples)
avgDif maxDif grad Penalty LC Boost maxAngle
0.6 2.2 1.4 1.2 off 2.2 0.10
maxAngle may be slightly weaker now though, I'm not certain.
I have a few samples where a maxAngle of 0.10 seems a tad too low. I think 0.15 might be necessary? Maybe even 0.20? But maybe a value that high would start destroying detail again?
Anyway, what is your opinion about AngleBoost now, with the new build? How useful is it?
And it seems you've set LocalContrast off now, too? So maybe I can remove it, after all?
Something I was wondering though - when a video is paused, the dither pattern seems to change every second. Is it possible to update it at the refresh rate? Sometimes there's banding which is difficult to see until the dither pattern changes, and I find myself quickly toggling the settings +/- 0.1 to check as that forces the dither to change.
Rerendering all the time would mean that GPU usage would jump up during paused state.
Werewolfy
19th October 2013, 12:51
I also found that a maxAngle of 0.10 is too low. I set it for now at 0.16. 0.20 attacks details sometimes, 0.16 seems to be the limit.
It can change at anytime but for now my settings are :
avgDif maxDif grad Penalty LC Boost maxAngle
0.6 2.0 1.3 1.2 off 1.9 0.16
Edit : I just noticed the issue badcondither mentioned where angleBoost blurs sharp dark lines. Now it seems that we can set it at 1.9 without any problems, it's starting to blur only from 2.0. So maybe 1.9 would be a good limit for a low setting? Anyway, it's a great improvement!
bacondither
19th October 2013, 13:42
avgDif maxDif grad Penalty LC Boost maxAngle
0.7 2.0 1.4 1.2 off 1.5 0.20
I have found that this settings above is as efficient at removing banding as my "medium" setting (avgDif 1.1 maxDif 3.0 grad 2.5 penalty 1.3 LC off boost off) but retains dark details much better(no blurring), almost as good as my old low without any angleBoost.
Great work madshi! :)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.