AVS Forum banner
Status
Not open for further replies.
1 - 19 of 19 Posts

·
Registered
Joined
·
126 Posts
Discussion Starter · #1 ·
Having just started to look at FFDShow, I have started to wonder how graphics cards handle the scaling of video. In fact, I am not even sure if graphics cards handle this or one of the direct show filters. If the DVD resolutionis 720 x 540 and it is displayed at a higher resolution, is it the video card hardware or some software component that performs the rescaling? What method (bilinear, bicubic, etc) is used?
 

·
Registered
Joined
·
590 Posts
Today overlays perform bicubic scaling in hardware, VMR9 uses the bilinear scaling of the 3D pipeline. The parameters and the number of taps (neighbour pixels) differs from card to card.

Lanczos and Spline are even better than bicubic. Bilinear is the most simple method with the worst frequency response.
 

·
Registered
Joined
·
1,358 Posts
I agree completely with FoLLgoTT's explanation. Hardware scaling native to video cards is good option. VMR9 by itself uses lesser scaling option. If you use FFDshow, scaling can be potentialy improved if you use lanczos or spline resize algorithms. For example, if you set resize option in FFDShow at your output resolution and use lanczos or spline resize, VMR9 will pass through that resolution without further rescaling. Not sure what overlay does in this case.


Some people are concerned by "ringing" effect that all advanced scaling algorithms like spline and lanczos produce. This appears as some sort of edge enhancement in the output signal. For example, if you opt for "simple" resize in FFDshow, you will see a difference. Simple resize will produce image that will be closer to original image. I personaly preferr the spline/lanczos image than simple resize.
 

·
Registered
Joined
·
129 Posts
What do you think about sinc? On my system, sinc reveals more details with more obvious contrast compared to spline/lanczos.


WinXP SP1 + DirectX 9.0b + Zoomplayer 3.3 Pro + WinDVD 5.35.20 + FFDShow resize to 1024x768 + VMR9


Display card 9600 Non Pro by Elsa Asia -> NEC LT240K -> 108" 2.35:1 DIY Gray Screen


Luma Sharpen 1.0 and Chroma Sharpen 0.5 is what I use for Spline/Lanczos, and 0.6/0.3 for sinc.
 

·
Registered
Joined
·
376 Posts
sinc is best on my setup. I've even made sacrifices to use it as oppossed to lanczos (i output in sinc'ed progressive rather than an interlaced mode, so my CPU can handle it). With ffdshow it does create a sort-of greenish tint, which I compensated for by changing gamma settings. However, it is the best soft-ware scaling method as far as I'm concerned (and this is upscaling as well).
 

·
Registered
Joined
·
129 Posts
llamameat,


Have you tried uncheck all the other supported output colorspaces and use only RGB32? It is confirmed that YU12 and YVY2 have bug. The output can be either greenish or washed out.


What's your resize resolution? AMD barton 2500+ over-clocked to 3200+ rating handles 1024x768 with gradual denoise set at 5 - 25. Epox 8RDA3 series nforce2 mainboard has the cleanest pci voltage in case you will be using Conexant 2388x with DScaler.
 

·
Registered
Joined
·
467 Posts
Resizing in ffdshow on my htpc gives worse results than if resizing is done by my Radeon 9200. I tried different algorithms in ffdshow, but still get better results if I don't. I don't know whether this is related to VMR9 or not because I believe VMR9 is vastly superior in PQ than overlay, so I won't change it just to be able to do better resizing in ffdshow.
 

·
Registered
Joined
·
1,358 Posts
Stasulos,


Not sure why would you have to sacrifice VMR9 to have FFDShow resize. WinDVD, NvDVD, and Sonic (not sure about PowerDVD) should work in VMR9 mode with FFDShow. IMO combination of these two is the winner, especially if only RGB32 is checked as output colorspace from FFDShow (although RGB32 on some systems produces really bad results). Look around this forum, plenty of threads on VMR9 + FFDSHow.


VMR9 by itself (i.e. without FFDSHow) does scale using less complicated alghoritm than overlay, or FFDShow spline or lanczos. However, I can understand how on some displays this might actually produce a better image quality (i.e. like some sort of "soft" or "dering" filter is applied).


Jamoka,


Are there any Catmull-Rom plugins that could work in FFDShow or AviSynth, or could be made of custom DirectShow filter graph? Any input will be appreciated.
 

·
Registered
Joined
·
467 Posts
vpopovic


Perhaps I did not make things clear. I am not saying that in my setup ffdshow does not work with VMR9. "Au contraire!". I was only referring to what FoLLgoTT said about VMR9 scaling being inferior to other methods. Therefore what I wanted to say was that VMR9 is vastly superior anyway even if it has inferior resizing capabilities. Sorry for confusion.
 

·
Registered
Joined
·
590 Posts
Btw, I found no way to get accurate chroma scaling in VMR9 (tested with WinDVD and Elecard). The luma channel looks exactly like the overlay when you use ffdshow scaling, but the chroma channel is a different story.


I got three different results depending on the input/output modes of ffdshow:


1. YV12 in / YV12 out: completely bilinear scaled chroma channel -> blurred chroma channel!


2. YV12/YUY2 in / RGB32 out: point sampling -> much Aliases!


3. YUY2 in / YV12 out: point sampling + bilinear filtering -> blurred Aliases! :D



With much time spent in testing, the lack of Vsync (tearing) and the "0-255 instead of 16-235 in certain situations bug" in mind I come to the overall conclusion that on a Radeon VMR9 is inferior to the overlay. Even if you use ffdshow to scale the picture you don't have the full performance of the overlay.

The only situation I can imagine to use VMR9 is interlaced playback, because in this case the overlay has the vertical filtering bug.
 

·
Registered
Joined
·
376 Posts
that may be scientifically sound....but damn if vmr doesn't simply LOOK BETTER than overlay....


First of all, i think overlay (luma and chroma) gets sharpened somewhere in the proccess, destroying some of the finer detail. Also, I think the range of colors gets clipped in overlay....colors are simply much better with vmr. Alot of people agree with me so something else must be going on with overlay that screws things up.


Now if you use the FireGL? drivers with your radeon, it's a different story, as overlay gains some of the positive aspects of VMR with those drivers.
 

·
Registered
Joined
·
1,358 Posts
I agree with llamameat. No matter what the theory behind VMR9 vs. overlay is, IMO VMR9 produces a better image quality in my set up and has been doing that for quite a while.


The basic issue with all of us comparing our set-ups is that we are comparing apples and oranges. Every set-up is a different story and has its own issues. For example, it is a very significant difference if you are using 480p display (I am not even including 480i), 720p display, or rear projection HDTV ready TVs. And then there are different quality levels in these general classes of display. RBG vs DVI vs Component. Size of display also matters. Reference set-up for 40" will be different than for 60". Viewing distance is different. Software is different. Hardware is different. Drivers are different. Settings are different. Display calibration is different.


It is good to share experiences and experiment, but at the end of the day each system will have its own "sweet spot".
 

·
Registered
Joined
·
1,358 Posts
FoLLgoTT,


I am not sure what are you refering to when you say that even with rescaling done in FFDShow the quality will be inferior to overlay.


Your examples indicate various setups but I believe the results you are mentioning are without FFDShow scaling. If in VMR9 mode you use FFDShow scaling to your output resolution, VMR9 will not scale the image and your FFDShow scaling option will be used. So if you choose lanczos, you will have lanczos scaling. Afrer scaling VMR9 will ask for hardware support for color space conversion if your input color space is not output color space (e.g. RBG for most of us with 32 bit desktop color depth). Only if your hardware does not support hardware color space conversion (i.e. you have card that is older thatn Rage 128), VMR9 will do its own color space conversion.


In addition to that, if you have RGB32 output color space enabled in FFDShow, VMR9 does not even convert color spaces, or is asking your hardware do to so. In this case it just assembles image, and based on what I see on my setup it does a much better job than overlay. Note: this does not work in overlay and it should work in VMR9. If you have any issues I believe you have an issue described in the next paragraph, or you should use FireGL drivers instead of Catalyst.


If anything else is happening in your system something is wrong with your set-up. Theoretical answer I gave you above is what I compiled from many different threads, with most recent contribution from CinemaVidGuy that is Nvidia's official support person for Forceware 3.0 Beta. I would suggest you re-instal your OS and start fresh. Serious testing is always done of fresh install. That is why I never do it. If you have multiple driver installations, multiple software installations of the same software (different versions or same versions), or if you dinstalled VMR9 and reiinstalled again (or just reinstalled), your system might be having some problems.
 

·
Registered
Joined
·
590 Posts
@llamameat
Quote:
First of all, i think overlay (luma and chroma) gets sharpened somewhere in the proccess, destroying some of the finer detail.
That is not true. Bicubic scaling introduces ringing. This is completely normal and no "sharpening". Bilinear filtering has a slightly blurred picture.



@vpopovic
Quote:
I am not sure what are you refering to when you say that even with rescaling done in FFDShow the quality will be inferior to overlay.


Your examples indicate various setups but I believe the results you are mentioning are without FFDShow scaling.
I'm referring to the fact that I couldn't get the chroma channel to be scaled with VMR9 as good as with overlay even WITH ffdshow resizing. If you know a way, please tell me. :)


I'm not talking about color space conversion, I'm talking about upsampling/scaling of the chroma channel. There are two stages of upsampling with ffdshow:


1. upsampling from 4:2:0 to 4:2:2: every software player do this when outputting packet formats like YUY2. The chroma upsampling is done in different ways. Some players do simple line doubling (like Elecard, Sonic) which leads to chroma aliasing. The better way is to bicubic upsample the channel.


2. If you go with a planar format like YV12/NV12 (4:2:0) directly to the overlay/VMR9 the upsampling is done in hardware. Overlay upsamples it bicubic, VMR9 does it bilinear.

So if you input a aliased YUY2 image to ffdshow and output it via YV12 to VMR9 you get a bilinear upsampled image of the aliased input. :D

If you output it via RGB32 the image is just point sampled. In this case there is no good upscaling algorithm.



And believe me, I have three different HTPC's here with three different Radeons. They don't have any software problems.


I think I have to do some screenshots to explain what I mean. :)
 

·
Registered
Joined
·
590 Posts
To show what I mean when I talk about chroma aliasing I took these photos from overlay a time ago for a german home cinema board. They are so blurry, because the crappy camera had its problems with the darkness in my room. ;)

The blurry VMR9 filtering is not there, maybe I'll take some screenshots...
 

·
Registered
Joined
·
227 Posts
How do you even know what the app is useing? I generally use WMP for video playback just because it is there and it works. I fiddled with FFDshow and noticed that the quality improvment when using it's rescale to desktop resolution is esentially insiginifcant. The biggest quality bost came from the de-noise processing.


Granted my test material was an MPEG1 640x480 recording from my tuner so it wasn't the best quality in the world to begin with. However for the most part that is what I'll be watching. I even noticed improvment with the de-noise filter on otherwise clean material; it helped to get rid of compression artifacting.
 
1 - 19 of 19 Posts
Status
Not open for further replies.
Top