Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Hardware & Software > Software players

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd February 2012, 07:16   #12241  |  Link
6233638
Registered User
 
Join Date: Apr 2009
Posts: 1,019
Quote:
Originally Posted by JarrettH View Post
Thanks for another great comparison 6233638

I settled on Mitchell many many months ago. IMO, HD resolution movies hold up well using Catmull, but I often forget to switch algorithms.
Glad you liked it.

Mitchell-Netravali was my original choice for Luma scaling with madVR, but I found aliasing to be problematic with too many DVDs and had to abandon it in favour of SoftCubic 50, which has gradually increased to 80 over time.

I'd recommend either Mitchell-Netravali or Bicubic 75 over Catmull-Rom. If I recall correctly, Mitchell-Netravali has roughly the same amount of aliasing, but far less ringing, and Bicubic has a little more ringing, but far less aliasing. Any of the algorithms on my "do not use" list are there because better choices exist, depending on your preferred balance between sharpness, ringing and aliasing - at least in my opinion.

I debated whether or not to put Lanczos 3 on the "do not use" list, but some people do seem to prefer it over Spline, and either seems equally objectionable to me, with far too much ringing. (Spline wins some cases, Lanczos wins others, though I'm leaning towards Spline now, when I was leaning towards Lanczos previously)
6233638 is offline   Reply With Quote
Old 22nd February 2012, 08:17   #12242  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Sounds like its about time madshi implements his non-ringing Lanczos4 scaler in madVR.

Speaking of, can madVR somehow leverage the GPUs built in scaler? I've been told Intels GPUs have a nice Lanczos4 scaler with ringing reduction, and i would like to compare it to madVRs other scalers.
The only way i know of to access it is using vanilla EVR, but for proper comparison switching renderers might introduce other factors..
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 22nd February 2012 at 08:23.
nevcairiel is offline   Reply With Quote
Old 22nd February 2012, 08:39   #12243  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by ryrynz View Post
Which is why I'd love to see the ability to auto switch algorithms based on content or even better which ffdshow preset is active
All in due time.

Quote:
Originally Posted by ryrynz View Post
As far as basic switching goes, Madshi could we get the ability to switch between chosen algorithms with a hotkey along with a OSD message regarding which one is active at time of switching?
It's not as easy as it might seem, because several of those algorithms also have options (e.g. Bicubic 50 / 75 etc). Well, I could cycle through every possible combination of algorithms + options, but I'm not sure how useful it would be, really. If you want to compare 2 specific algorithms, you would probably want to switch between them with a key press, instead of having to cycle through 20 or so algorithms in order to get back to the one you want to compare to.

Quote:
Originally Posted by nevcairiel View Post
Sounds like its about time madshi implements his non-ringing Lanczos4 scaler in madVR.
Yeah, I would really like to do that, cause it's an area which I find quite interesting. Sadly, I still think there are more important things I need to do first.

Quote:
Originally Posted by nevcairiel View Post
Speaking of, can madVR somehow leverage the GPUs built in scaler? I've been told Intels GPUs have a nice Lanczos4 scaler with ringing reduction, and i would like to compare it to madVRs other scalers.
Leveraging the GPU's built in scaler is on my to do list. It would work somewhat similar to how I implemented DXVA deinterlacing. The Intel scaler should be interesting, in a quick comparison is seemed slightly less capable than my non-ringing algorithm draft, but better than standard Lanczos. There's one catch, though: I've been told the Intel scaler currently only supports NV12 -> NV12 scaling, so it's limited to 8bit 4:2:0 input and output, and it doesn't use dithering internally. Anyway, it's on my to do list, but there are so many other things there... I wish I had more time for madVR, but I do need to work on my commercial projects once in a while, too, to earn my living...
madshi is offline   Reply With Quote
Old 22nd February 2012, 08:44   #12244  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by nevcairiel View Post
Sounds like its about time madshi implements his non-ringing Lanczos4 scaler in madVR.
P.S: I'm not 100% sure yet, but it's possible I might need OpenCL for this, with Direct3D9 <-> OpenCL interop. AMD does not support D3D9 interop, at least not yet, so for now I don't really have a good compute capability for AMD GPUs. Which may make implementing non-ringing algorithms difficult/slow. I still hope that AMD will add D3D9 interop at some point in time, since OpenCL 1.2 now has an official extension for that.
madshi is offline   Reply With Quote
Old 22nd February 2012, 10:15   #12245  |  Link
CruNcher
Registered User
 
CruNcher's Avatar
 
Join Date: Apr 2002
Location: Germany
Posts: 4,926
Quote:
Originally Posted by 6233638 View Post
I actually find this kind of comparison to be fairly useless unless you're using a very small display. Having a key combination that toggled the settings would make differences much easier to spot, as your eyes are fixed in one place.

What I do when comparing scalers is take screenshots, and paste them as new layers in a Photoshop document. That way I can easily toggle between different scaling options, and view them at higher magnification for close scrutiny. Photoshop also has some features which make seeing the difference between images easier as well.

If there was some way to automate creation of several screenshots of the current image and composite them into a layered TIF file, that would be much more useful.

What I would really like though, if it's possible, would be to view chroma (and luma, I suppose) on its own. That would make selecting a chroma algorithm much easier. (though at this point, I feel like I've gone through enough test cases that I have a good idea of what the options are now)

This might make things easier for you:

Algorithms which should not be used for Luma upscaling:
  • Nearest Neighbour—Severe aliasing.
  • Bilinear—High levels of aliasing.
  • Catmull-Rom—High levels of aliasing and ringing.
  • Bicubic 50—Virtually identical to Catmull-Rom
  • Bicubic 60—Marginally less aliasing and more ringing.
  • SoftCubic 100—Far too soft to be used for just about anything, though it will actually hide ringing in the source if it's really bad.
  • Lanczos 4—Significant ringing for a slight improvement in aliasing over Lanczos 3.
  • Lanczos 8—Hilarious amount of ringing, though it does handle aliasing well.
  • Spline 4—Virtually no change from Spline 3, except for adding a lot of ringing.
I would not recommend using linear light upscaling at all, but if you really want to use it, SoftCubic 100 is the only one where it doesn't show a dramatic reduction in image quality. The problem with is is "negative ringing" where objects get thick black outlines around them, which are often highly aliased. It's a shame, as the appearance of linear light scaling definitely is better otherwise.

This is just one example, and it's taken from game footage because that makes the differences easier to spot. I've also changed the levels in Photoshop to make things easier to see.

I recommend that you open these in separate browser tabs (middle click, or ctrl+click) and swap between them to compare. (ctrl+tab to go forwards, ctrl+shift+tab to go back) They're posted in order of sharpness.


Nearest Neighbour
, to give you an idea of the source material. Note that there is no black outline around any of this.

So, out of the algorithms that are left, what do we have?

Spline 3 & Lanczos 3. These are the most complex and require the most GPU power. They are the sharpest algorithms, and as a result, have quite a lot of ringing. The difference between the two really comes down to Lanczos 3 having less aliasing, but more ringing than Spline 3.

Bicubic 75 is still a sharp algorithm that has even less ringing than either and still handles aliasing reasonably well.


Lanczos 3


Spline 3


Bicubic 75


The next step down in sharpness, is Mitchell-Netravali and SoftCubic 50. They're fairly similar in terms of overall sharpness, though Mitchell-Netravali is sharper on fine details.

Mitchell-Netravali is a great balance between sharpness and ringing, but unfortunately, it shows quite a lot of aliasing. (look at the diagonal line at the left of the image)
SoftCubic 50 has somewhat more ringing, but handles aliasing much better.


Mitchell-Netravali


SoftCubic50


And below that, as far as sharpness is concerned, are higher levels of SoftCubic. Personally I don't see much use to SoftCubic 60, but would use 70/80. SoftCubic 80 has the least amount of ringing of any of the scaling algorithms available in madVR, and very low aliasing. As the name implies, it can look quite soft, but I find this tends to hide MPEG compression artefacts in the source without removing detail as a noise reduction algorithm would. 70 is slightly sharper at the expense of some ringing being visible in rare circumstances.


SoftCubic 80


It looks very bad at this high magnification, but when actually watching DVD content, I don't really notice the sharpness, just the lack of artefacts.


Out of all the algorithms, I would probably recommend choosing between Bicubic 75, Mitchell-Netravali, or SoftCubic 80, depending on your preference for sharpness and your tolerance for aliasing/ringing.



Chroma is a much easier decision in my opinion. The choice there is between Bicubic60/75, or Mitchell-Netravali. Anything else is either too sharp and exhibits ringing, or too soft and desaturates parts of the image.

Right now, I am using Mitchell-Netravali. I had avoided this in the past due to aliasing problems being visible with Luma upscaling, but I have yet to find anything where this has been a problem, and MN exhibits the least amount of ringing with chroma scaling.

So far, I have only found one image where using SoftCubic may actually be beneficial for chroma scaling, and I believe that this is a problem in the source material, rather than the scaling algorithm used:


Nearest Neighbour.
This shows why I believe it's the source material at fault, rather than the Chroma algorithm used.

Bicubic 75
, tends to be most faithful to the source material where where saturation is concerned, but can exhibit ringing with some material. (shows as colour getting lighter towards the edges of objects) In some cases 60 seems to be better, in others, 75.

Mitchell-Netravali
Somewhat less saturated than Bicubic 75 on fine details, but almost no ringing.

SoftCubic 100.
Eliminates the banding, but completely desaturates the image.
On Intel HD Graphics you get all this for free
__________________
all my compares are riddles so please try to decipher them yourselves :)

It is about Time

Join the Revolution NOW before it is to Late !

http://forum.doom9.org/showthread.php?t=168004
CruNcher is offline   Reply With Quote
Old 22nd February 2012, 10:27   #12246  |  Link
Qaq
AV heretic
 
Join Date: Nov 2009
Posts: 422
6233638, thanks a lot for your post. I need some time to prepare my answer. I'll explain all my thoughts later.
Qaq is offline   Reply With Quote
Old 22nd February 2012, 11:01   #12247  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
@CruNcher, do you really have to do a full quote of a monster sized post if you just comment with one line?? Besides, you do not get "all this" for free with Intel HD. "All this" would mean a choice of various different chroma upsampling algorithms. Intel HD only offers one chroma upsampling algorithm, and I've not tested its quality.
madshi is offline   Reply With Quote
Old 22nd February 2012, 11:46   #12248  |  Link
VincAlastor
Registered User
 
Join Date: Sep 2009
Location: Berlin
Posts: 173
Quote:
Originally Posted by madshi View Post
First of all you should check the madVR OSD to make sure that the frame drops are not caused by empty queues. If the frame drops occur even though all queues are full, then it's probably related to a refresh rate mismatch. This problem should not occur when you use Reclock, though. You should disable all VSync related options in Reclock, also make sure you reset the Reclock timing database.
thank you. the only thing what help to avoid dropped frames was to create a custom profile in nvidia resolution settings. now madvr shows (ctrl+j) display fps 23.97602-23.97609 and not 23.97077. thats enough accurate for 24000/1001 content.
i am wondering why there are not more user wich have problems caused dropped frames. its a general problem for nvidia and intel gpu's, like the anandtech article explained.

Last edited by VincAlastor; 22nd February 2012 at 11:48.
VincAlastor is offline   Reply With Quote
Old 22nd February 2012, 14:31   #12249  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by Mr Alpha View Post
There is no temporal difference between the fields. If I run it though something like QTGMC I get 50p but with duplicate frames. If I run it though TIVTC I get good looking results. It is based on this I concluded that it was 2:2 material.
I've just analyzed this and it is field blended and thus can't be IVTC'ed properly. For your interest, here are 3 consecutive fields from the 50i stream:

field 1, field 2, field 3

You can see that fields 1 and 3 are ok, but field 2 is blended.
madshi is offline   Reply With Quote
Old 22nd February 2012, 14:57   #12250  |  Link
Ryokurin
Registered User
 
Join Date: Sep 2002
Posts: 92
Quote:
Originally Posted by e-t172 View Post
The Windows Visa/7 audio engine does not introduce distortion. In fact it should be bit-exact if the input sample rate matches the configured sample rate.
Month old I know, but he may had been on to something.

http://support.microsoft.com/kb/2653312

It's a hotfix for distorted audio file sounds after you convert the sample rate in Windows 7 or Windows Server 2008 R2
Ryokurin is offline   Reply With Quote
Old 22nd February 2012, 15:22   #12251  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by nlnl View Post
Please have a look. This is file http://dl.dropbox.com/u/43376972/Cadence%2032322.mkv (DVD content) where Madvr detects (film mode) very exotic cadence (3:2:3:2:2).
Is the source content actually 25p transformed to 59,94i?
Shoud it be deinterlaced and decimated to 25p?
Quote:
Originally Posted by nlnl View Post
Another sample of 3:2:3:2:2 cadence in NTSC dvd (in mkv). If madvr in film mode we see combing and everything is good in video mode.

http://dl.dropbox.com/u/43376972/Cad...322%20num2.mkv
Both samples are field blended, so IVTC won't work.

Quote:
Originally Posted by 6233638 View Post
Update: A new sample for you:
http://www.mediafire.com/?cicxx9u4crfkb5o

Cadence is detected as 3:2, but there's a lot of flickering/aliasing and combing. Not sure if this is something going wrong with the deinterlacing or if it's a really bad source. (it's a really bad film, so I wouldn't be surprised!)
The source itself seems to contain all the problems.

Quote:
Originally Posted by italospain View Post
here a 3 examples of my NTSC DVD Library where i am not able to IVTC with madVR or DScaler mod.

https://rapidshare.com/files/576191865/Examples.zip
The first and 3rd samples are field blended. IVTC doesn't work for such DVDs. The 2nd sample is detected by madVR as 4:2:2:2 and IVTCing appears to work just fine here. The 4:2:2:2 cadence seems to be correct, too, based on a quick check on some consecutive fields.

Quote:
Originally Posted by 6233638 View Post
Another deinterlacing sample. This is a weird one, don't know if it will be useful or not. The film itself was perfect, staying in 2:2, but when the credits came up, it went to unknown cadence, and then switched to 4:2:2. (which is wrong)

http://www.mediafire.com/?l85rwl1ss2cghv5
The end credits in this sample are natively interlaced, sadly, so IVTC won't work for them.
madshi is offline   Reply With Quote
Old 22nd February 2012, 15:48   #12252  |  Link
kalston
Registered User
 
Join Date: May 2011
Posts: 164
Quote:
Originally Posted by Ryokurin View Post
Month old I know, but he may had been on to something.

http://support.microsoft.com/kb/2653312

It's a hotfix for distorted audio file sounds after you convert the sample rate in Windows 7 or Windows Server 2008 R2
Oooh nice, I had been looking at various threads mentioning this problem and thought no hotfix had been released yet. Glad to see Microsoft has looked into it. The distortion going from 44,1khz to 48khz (or the other way around) was just plain horrible and easy to notice.

@ 6233638
Thanks a lot for your post, I'll be sure to adjust my settings according to your recommendations once I get back home.
kalston is offline   Reply With Quote
Old 22nd February 2012, 17:10   #12253  |  Link
e-t172
Registered User
 
Join Date: Jan 2008
Posts: 589
Quote:
Originally Posted by Ryokurin View Post
Quote:
Originally Posted by e-t172 View Post
The Windows Visa/7 audio engine does not introduce distortion. In fact it should be bit-exact if the input sample rate matches the configured sample rate.
Month old I know, but he may had been on to something.
I was wrong when I said that: the audio engine dithers the output. This is inaudible but obviously not bit perfect.
e-t172 is offline   Reply With Quote
Old 22nd February 2012, 17:40   #12254  |  Link
Trib
Registered User
 
Join Date: Feb 2012
Posts: 14
Quote:
Originally Posted by 6233638 View Post
I recommend that you open these in separate browser tabs (middle click, or ctrl+click) and swap between them to compare. (ctrl+tab to go forwards, ctrl+shift+tab to go back) They're posted in order of sharpness.
Sick post! Thanks a lot! =)
Trib is offline   Reply With Quote
Old 22nd February 2012, 19:25   #12255  |  Link
dansrfe
Registered User
 
Join Date: Jan 2009
Posts: 1,210
Quote:
Originally Posted by e-t172 View Post
I was wrong when I said that: the audio engine dithers the output. This is inaudible but obviously not bit perfect.
What does Windows 7 dither the output to? 48khz?
dansrfe is offline   Reply With Quote
Old 22nd February 2012, 19:30   #12256  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,342
Quote:
Originally Posted by dansrfe View Post
What does Windows 7 dither the output to? 48khz?
Sample rate is not dithered.
The mixer does all its processing in float, so when it needs to convert that float back to 16 or 24-bit int, it uses dithering. Rather have dithering then no dithering, of course, but its not untouched because its internally converted to float once.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 22nd February 2012, 19:30   #12257  |  Link
kerman
Registered User
 
Join Date: Feb 2008
Posts: 46
Is it advisable enable dithering adding on filters? I have a plasma which already produces dithering by its own; CoreAVC adds dithering, madVR adds dithering... isnt it much or enough dithering for a native dithering display technology as plasma?

Would it be fine or any upgrade on quality disabling dithering on CoreAVC and madVR?
kerman is offline   Reply With Quote
Old 22nd February 2012, 22:02   #12258  |  Link
Razoola
Registered User
 
Join Date: May 2007
Posts: 454
Ohh my, a new reclock version has turned up.. Pity it only looks to add power dvd12 support.
Razoola is offline   Reply With Quote
Old 22nd February 2012, 22:27   #12259  |  Link
Andy o
Registered User
 
Join Date: Mar 2009
Posts: 962
Quote:
Originally Posted by kerman View Post
Is it advisable enable dithering adding on filters? I have a plasma which already produces dithering by its own; CoreAVC adds dithering, madVR adds dithering... isnt it much or enough dithering for a native dithering display technology as plasma?

Would it be fine or any upgrade on quality disabling dithering on CoreAVC and madVR?
The decoder should add dithering only if it's processing (as in RGB conversion). If you let LAV or (I assume) CoreAVC pass the unprocessed NV12 output for instance, only madVR will dither. And yes, it's better to enable it in madVR. Your display is doing its own processing, so it needs to do its own dithering.
__________________
MSI MAG X570 TOMAHAWK WIFI, Ryzen 5900x, RTX 3070, Win 10-64.
Pioneer VSX-LX503, LG OLED65C9
Andy o is offline   Reply With Quote
Old 23rd February 2012, 14:10   #12260  |  Link
chros
Registered User
 
chros's Avatar
 
Join Date: Mar 2002
Posts: 2,323
Quote:
Originally Posted by madshi View Post
Ok. Can you please check this build to confirm that the problem is gone for you:

http://madshi.net/madVRmaybeFixed.rar
Hi! If I'm right, I have the same problem than Razoola, this build doesn't fixes the problem for me...

Geforce v295.73 driver, 9600m GT (in laptop), win7x64:
- I have to check overshoot max frame latency to get rid of the presentation glitches in exclusive mode, but in that case render queue is: 3-4/12 (in windowed mode is full).

It's a laptop screen with 60Hz (I don't use any other display), and I don't use any refresh rate changer, the material is 23.976 ...

Thanks!
__________________
Ryzen 5 2600,Asus Prime b450-Plus,16GB,MSI GTX 1060 Gaming X 6GB(v398.18),Win10 LTSC 1809,MPC-BEx64+LAV+MadVR,Yamaha RX-A870,LG OLED77G2(2160p@23/24/25/29/30/50/59/60Hz) | madvr config

Last edited by chros; 23rd February 2012 at 14:12.
chros is offline   Reply With Quote
Reply

Tags
direct compute, dithering, error diffusion, madvr, ngu, nnedi3, quality, renderer, scaling, uhd upscaling, upsampling

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 14:07.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.