gfx.webrender.super-resolution.nvidia not working despite enabling it
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox116 | --- | fixed |
People
(Reporter: fetiha5628, Assigned: canadahonk)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0
Steps to reproduce:
- Go to about:config
- Find gfx.webrender.super-resolution.nvidia and set it to true
- Restart firefox
- Watch youtube video to see difference (https://www.youtube.com/watch?v=YE7VzlLtp-4)
Actual results:
Video is not sharpened. I did screenshots comparing before and after and there is no difference. I have 3070 and proper configuration in driver, sharpening quality set to 4.
In microsoft edge - everything is working fine without setting anything up, however sharpening is pretty weak. It is enough to notice undeniable difference when comparing screenshots.
Gallery of images: https://imgur.com/a/pDIzndZ
Order of images is: off firefox, on firefox (not sharpened), off edge, on edge (sharpened).
Expected results:
Video should be sharpened using Nvidia Super Resoltution technology.
I am not entriely sure on which videos will it work, so I used test video which edge articles were using (big buck bunny 720p without ability to select 1080p on YT).
According to nvidia (https://nvidia.custhelp.com/app/answers/detail/a_id/5448/~/rtx-video-super-resolution-faq):
Q: Does video need to be played at full screen for RTX Video Super Resolution to work properly?
A: No. As long as video needs to be upscaled beyond its native resolution, RTX Video Super Resolution will enhance video in a window.
Q: Will RTX Video Super Resolution be enabled if video is displayed at native/lower resolution? Does RTX Video Super Resolution enhance downscaling?
A: No, RTX Video Super Resolution will only be enabled if the video requires upscaling.
I attach screenshots with setting enabled and disabled. In edge I had to disable it in my driver because there are no settings for it in browser itself.
Comment 1•2 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Graphics: WebRender' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Updated•2 years ago
|
Updated•2 years ago
|
| Assignee | ||
Comment 2•2 years ago
|
||
Initial implementation was not completely tested (just my setup mostly), so not that surprised it might not work for everyone yet (hence behind pref). Will investigate further, thanks for report and NI.
| Assignee | ||
Updated•2 years ago
|
I edited file:
gfx\webrender_bindings\DCLayerTree.cpp
At line #1379, I changed code from:
struct {
UINT version;
UINT method;
UINT enable;
} streamExtensionInfo = {nvExtensionVersion, nvExtensionMethodSuperResolution,
enabled ? 0 : 1u};
to:
struct {
UINT version;
UINT method;
UINT enable;
} streamExtensionInfo = {nvExtensionVersion, nvExtensionMethodSuperResolution,
enabled ? 1u : 0};
Resolution scaling works on my system after making this change.
I'm using RTX 3080 Ti.
| Assignee | ||
Comment 4•2 years ago
|
||
Oh whoops, not sure how that happened. Will submit a fix, thanks for the find.
| Assignee | ||
Comment 5•2 years ago
|
||
Previously was setting inverse of enabled incorrectly. (oops)
Comment 7•2 years ago
|
||
| bugherder | ||
Updated•4 months ago
|
Description
•