WIP [windows] Enable shader based HQ scalers for DXVA renderer
#46
It might just be me, but I can't see the option in the nightly builds I have tried so far; is the option in supposed to be in the same menu as before? Or is it not included in the mainline yet?
Reply
#47
I just downloaded the Sep 11 nightly and it is there where it is supposed to be, in video settings. During playback, click the "film roll" icon and select in "Video scaling method" option. Lanczos, Spline and Bicubic should be available for DXVA decoded material also.
Reply
#48
Ah OK, got it now, thanks. I was being thick and for some reason looking under deinterlace method instead, even though it was right there in front of me next option down.
Reply
#49
I have been using this for awhile now, and it works well. However, I have a suggestion. Currently, in settings you have the option to "Enable HQ Scalers for scalings above" in 10% increments, so 0%, 10%, 20%, 100%, ect. For some reason a lot of 1080p itunes content is 1912x1072. This is a difference of roughly 1.2% Since I have 10% enabled in the settings, these videos don't get scaled with HQ and look terrible. I was watching Family Guy which is an animated show, and it looks really soft without HQ scaling. I could leave the setting at 0% so everything would get scaled, but then my graphics card (AMD 5450) is not powerful enough to deinterlace 1080i content with the HQ scalers on so video stutters. Right now I'm launching MPC-HC for these videos, which is not ideal.

What I'm proposing is to allow us to further refine this setting to deal with issues like this, whether in the GUI itself or via advancedsettings.xml. In my case, if I was able to change the settings to scale anything larger than 1%, the issue would be gone. There is no reason to ever scale content that is the same as the resolution, so I'm not sure why 0% was picked as the starting point rather than 1%. Or just add an option to disable HQ scalers for native resolution videos. That way it scales everything besides 1920x1080 (or whatever your resolution is).
Reply
#50
Your reasoning is fine. However there is no guarantee that native videos are not going through a scaling algorithm unfortunately. Not sure about XBMC, but most Windows renderers do resize even when not necessary. And I think XBMC does the same too.

Have you considered upgrading your GPU? I know your situation very well from the ION times. If you want good deinterlacing and scaling this is an immediate 100% working solution. Wink
Reply
#51
(2013-12-06, 20:38)a11599 Wrote: Your reasoning is fine. However there is no guarantee that native videos are not going through a scaling algorithm unfortunately. Not sure about XBMC, but most Windows renderers do resize even when not necessary. And I think XBMC does the same too.

Have you considered upgrading your GPU? I know your situation very well from the ION times. If you want good deinterlacing and scaling this is an immediate 100% working solution. Wink
That's interesting to know. I'll have to run some tests. It could be the reason why I feel that 1080p Blu-rays played back in XBMC look a little softer compared to the same video played back in MPC-HC with Bicubic -1. And why Family Guy (1912x1072) looked so blurry even though it was only scaling a few pixels each way. If the DXVA resizer is somehow screwing with the video quality that could explain the difference. I never would have thought it was scaling 1080p content to fit a 1080p screen. That's still doesn't quite make sense to me as it's a 1:1 resolution but oh well. I will probably look into upgrading my graphics card soon as I wanted to mess around with madVR anyways. I don't want a huge card that needs to plug into the power supply since I don't game. I'll probably look at an AMD 6570 or something. You have any suggestions?

For the time being I'll probably switch my settings around so XBMC launches 1080i videos with MPC-HC, and plays everything else in XBMC, so I can keep it on Lanczos3 at all times.

Edit: I just checked a true 1080p (1920x1080) Blu-ray of Family Guy that I have, and there is no difference in picture quality between DXVA and Lanczos3 scaling. So XBMC is not scaling the picture on a 1:1 input, as I expected. If I could further refine the HQ scaling to 1% instead of 10%, my problem would be solved, and no need for a new graphics card.
Reply
#52
I have a 6570 (Sapphire Ultimate, passive) and it works perfectly. Also has a very nice DXVA resizer out of the box. Handles XBMC flawlessly and most madVR stuff (except the most hardcore options).
Reply
#53
a11599, how hard would it be to add my request to the patch? Wouldn't it just be a few lines of code to modify the values? It would really be nice to be able to use this without having to buy a new card. The one I have now is just fine and it's passive which is nice. The card you have is discontinued and I can't find anything similar that's passive at a decent price, that's low profile.
Reply
#54
Actually it is so easy you can even do it yourself.
  1. Locate and edit the following file:
    {XBMC installation path}\system\settings\settings.xml
  2. Find the following section (search for "13435"):
    Code:
    <setting id="videoplayer.hqscalers" type="integer" label="13435" help="36154">
      <level>2</level>
      <default>0</default>
      <constraints>
        <minimum>0</minimum>
        <step>10</step>
        <maximum>100</maximum>
      </constraints>
      <control type="spinner" format="string">
        <formatlabel>14047</formatlabel>
      </control>
    </setting>
  3. Change <step>10</step> to <step>1</step>.
  4. Profit.
Yes, low profile passive midrange cards are not easy to find. That's why I have got a Silverstone Grandia case. Wink
Reply
#55
Great, I'll try that. Will I have to do this every time I update nightly or will the changes stick? Seeing as how this is so easy to do my suggestion still stands to allow the user to edit from 0-100 in the GUI instead of increments of 10 for the final Gotham build. Since XBMC is so customizable by default, it seems odd to limit the scaling settings in this way. This would help people with slower graphics cards to fine tune settings to their liking, without having to come to the forums and find out how to edit system files.
Reply
#56
Every installation will overwrite it.
Reply
#57
I changed the step to 1, changed it to 1 in the GUI, but it won't allow me to use HQ scaling for 1912x1072 videos. What's up with that?
Reply
#58
Well, it is less than 1%... So it will use DXVA scaling. Yeah. Just submitted a PR, but it obviously won't help in your case...
Reply
#59
1912x1072=2,049,664 pixels
1920x1080=2,073,600 pixels

Divide the numbers and you get 98.84
100-98.84= 1.16%

It's greater than 1%, so it should scale the video.

I tried changing the number in settings.xml to 0.1, but it just locked up the XBMC settings GUI and froze.
Reply
#60
It just compares horizontal / vertical resolution and not resolution pixels. Neither is above 1%.
Reply

Logout Mark Read Team Forum Stats Members Help
[windows] Enable shader based HQ scalers for DXVA renderer0