View Full Version : madVR - high quality video renderer (GPU assisted)
aufkrawall
1st February 2016, 16:38
A strength of 3 works with super-xbr for my GTX 980 (60fps).
adhara
1st February 2016, 17:44
Even with the highest end cards, I think they may struggle at those setting. Super res is super expensive at 4k. Definitely impossible for 60fps content.
Sent from my 306SH
Works well with my 970GTX...
XMonarchY
1st February 2016, 18:24
How does madVR categorize resolutions and decides when to double / quadruple an image and when not to? Assume identical settings in all cases.
For example, I have a 1080p display and some rips I watched had resolution of 1040p, in which case madVR did not use either doubling nor quadrupling, which were set to Always. However, some "1080p" rips use lower resolution like 1016p, in which case madVR does use doubling and/or quadrupling. At which point does madVR decide to use doubling and/or quadrupling?
The reason I am asking is because my PC cannot handle chroma doubling and/or quadrupling with NNEDI32 when a 1016p video is played on my 1080p display. My PC handles 720p doubling and/or quadrupling just fine. This creates a problem when I add several 1080p videos to my list and some, like 1016p, require me to change settings, even though they are very close in resolution to those videos that would not use doubling and/or quadrupling, such as 1040p!
nevcairiel
1st February 2016, 18:28
That entirely depends what the actual resolution is. 1040p is not very accurate, you would need to tell us the full resolution and the aspect ratio. A video could be 1920x1040 and need no scaling at all, because its just cropped.
madshi
1st February 2016, 19:47
I am using LAV Nightlies and the latest madVR but cannot get this to work with DVD subtitles. I have a DVD (the German DVD of Die innere Sicherheit) (http://www.amazon.de/Die-innere-Sicherheit-Special-Edition/dp/B00005U8PS) which is non-anamorphic and has a 1.66:1 film windowboxed into the 4:3 space. The subtitles on the DVD itself are partly in the video and partly in the black bars underneath. No matter what combination of settings I use, the DVD subtitles do not move. If I load a separate .srt file into XySubFilter, I can easily get the black bars cropped and the subtitles managed correctly.
Do I somehow need to activate the "new LAV DVD subtitle export to madVR"?
I don't think there's anything specific you need to do to enable the LAV DVD subtitle export. Can you create a small sample for me to double check / reproduce this problem on my PC?
@madshi: I noticed that on my nVidia 980 Ti, 1080p frame packed 3D 23Hz translates to really ~23.000fps
Does the Ctrl+J OSD really report 23.000fps?
Could you put back the old version of finesharp?
Crispen edges is sometimes too much for my gpu.
I'm not going to compromise quality just to gain a little bit of performance. I'm a bit surprised, though. Is crispen edges really so much more power hungry than the original FineSharp? I would think the difference in performance shouldn't be big.
I also still prefer finesharp result than crispen edges one alone.
That would be a better reason to bring the old version back. Can you show me some screenshots that show why you prefer the old version? I'll start with a screenshot comparison which shows why I changed FineSharp:
Squirrel - Original (http://madshi.net/SquirrelOriginal.png)
Squirrel - FineSharp 2.0 (http://madshi.net/SquirrelFineSharp20.png)
Squirrel - crispen edges 2.0 (http://madshi.net/SquirrelCrispen20.png)
The obvious difference is the heavy ringing FineSharp produces, while crispen edges is much cleaner. But even if you leave that aside, I still think that crispen edges looks better than FineSharp. At least with this test image.
Your turn: Show me some screenshots where FineSharp looks clearly better than crispen edges (please include a screenshot of the unsharpened video, so I can play with different FineSharp / crispen edges strengths here myself), and I may consider making the original FineSharp algo available as an option.
Could you make the display modes generic for any display monitor like smooth motion?
I don't think that's a good idea. In a multi-monitor setup you may have different wishes for different monitors.
In Kodi there is a option called "Adjust Display Refresh Rate" and this is an on/off button.
I think display modes is a very important thing and it should be simpler for novice people.
It would be great if madVR could automatically get available display frequencies and switch to the appropriated one.
I agree that the current display mode changer setup is not very user friendly. That will be improved in a future version. Please understand that madVR hasn't reached v1.0 yet, so some things are not optimal yet. My priority is currently on adding all missing features (like 3D playback which was introduced in v0.90) and improving the algorithms. For v1.0 the user interface needs to be optimized, a documentation/help needs to be written, maybe some assistants added etc. But that's not a priority right now.
A question about the upcoming downscaler: does it support any (smaller) scale factor
Yes.
If you use Linear Light downscaling, chroma will always be upscaled. Untick Linear Light, then madVR will not upscale chroma when video is downscaled by a large scaling factor, like 50%.
Exactly!
Though, I do have a question: couldn't you technically apply the same gamma curve to the luma channel to make it linear light? I mean, it is the brightness channel. Perhaps a trade quality option: Downscale luma channel at 50% scale or below even when linear light is enabled.
In theory it's the "brightness" channel, but please consider how it was created: The linear light RGB video frames were converted to gamma light R'G'B', and then converted to Y'CbCr with a matrix which was originally meant to be used in linear light. Practically this means that the Y' channel is not a clean "brightness" channel, anymore. Instead the CbCr channels contain some fragments of "brightness" now, too.
A perfect reconstruction of the original linear light RGB data is not possible because chroma was subsampled. But in order to get as near as possible to the original data, we need to undo the bad processing steps in the exact opposite order. Which means first we have to upsample chroma, then convert back from Y'CbCr to R'G'B'.
That said, a "trade quality for performance" option might be possible here. But then, such an option already exists, kind of. Simply disable linear light downscaling, and madVR doesn't have to upscale chroma, anymore, when downscaling the image a lot. Considering that, I'm not sure if adding another trade quality option is worth the effort here.
i need a little help. I used finesharp with the old way i.e. avisynth
You didn't tell us which parameters you used for FineSharp in AviSynth. Anyway, madVR's "crispen edges" is the successor to FineSharp. Try it with different strength values to see which value you like. It doesn't look exactly the same as FineSharp did, though. IMHO it looks better, at least in some situations. YMMV, though.
Madshi, is it possible to implement profile selection that detects power settings, i.e., plugged or unplugged laptop?
I suppose it is, but I'm not sure how difficult it is, and it's not really a priority atm. I'll add it to my long term to do list, though.
I have a lot of scenes where I can identify where superres makes thin smooth lines (after nnedi3) into thin jagged lines. These happen a lot more often when the lines are 1-3 px, as they often are in 480p or lower.
Samples, please?
I've been having trouble getting a clip to play smoothly. It's a sample of the sort of content I see frequently while watching TV.
http://www.filedropper.com/sample2
The first half of the clip works perfectly with Film Mode forced on, but I get judder when the golf program resumes. If I force Video or allow MadVR to auto select the method, the reverse is true. Allowing LAV to deinterlace, and disabling MadVR's deinterlacing, I get smooth playback throughout. Though I lose the benefit of IVTC, something the first part of my clip needs.
I get the same behavior in EVR. Is this a limitation with DXVA2 hardware deinterlacing?
I had asked the same question on the LAV Filters thread, but with some guidance I decided to bring my question here as I believe there might be a problem with DXVA2 hardware deinterlacing.
When using CUVID deinterlacing, which output mode are you using in LAV? Film or Video? If you're using Film, also try Video. Does Video maybe produce the same problems as DXVA2 deinterlacing?
with my monitor, it is 120hz, and these movies are 23.9 something , So im assuming that thats whats causing the ugly sluggish skittering/stuttering/jittering nonsense when the scene's are in motion. The quality is nice but this drives me bonkers...and i also find that 120fps with SVP is just way to fast and looks unnatural for film and ya...so can i find maybe a 60fps or anything slower that will not cause this affect?
The best solution is usually to try to switch your monitor to exactly the refresh rate which matches your movie framerate. So if you movie is 23.976fps, try switching your monitor to 23.976Hz. In Windows this mode is usually just called "23" instead of "23.976".
Another option is to stick to 120Hz and in madVR enable "smooth motion frame rate conversion". However, this consumes more GPU power and will not look any better (rather a little bit worse) than switching your monitor to the correct refresh rate. Unless your monitor doesn't handle 23.976Hz well. In that case madVR's "smooth motion FRC" may produce superior results. Just try both and compare.
Make sure that you don't get dropped frames in the madVR OSD (Ctrl+J). If you do, you may have to lower your madVR settings a bit because your GPU might then not be fast enough for the settings you've selected.
madshi
1st February 2016, 19:57
It looks like I found a problem created between madVR v0.89.12 and v0.89.13. It took some time to track this down since I hadn't upgraded in quite a long time.
The problem occurs with 1080i59 content (recorded with HDPVR), but does not seem to be a problem with 1080p23 content. While playing a 1080i59 video file, if I double click on another 1080i59 video file to play it in the same video player window, I get a blank screen with sound from the new video. I also previously was able to drag the video player window from one screen to another screen with no problems (just a minor pause in playback), but that now usually gives a blank screen with audio playing with an occasional DirectX fails to render crash.
MPC-HC 1.7.10 (64-bit)
LAV Filters 0.67.0
madVR 0.89.12 - ok
madVR 0.89.13 - fail
Windows 7 64-bit
NVIDIA GTX 670 video card
madVR settings:
D3D9 overlay
NV12, 8 bit, 4:2:0
movie 29.970 fps (says source filter)
movie 1920x1080, 16:9
touch window from outside
chroma > Jinc AR
image < Lanczos3 AR
vsync 16.68ms, frame 16.68ms
matrix BT.709 (says upstream)
primaries BT.709 (says upstream)
limited range (says upstream)
deinterlacing on (settings)
...
I haven't updated for quite a while, but with all the great work being done, I thought I would give the 3D playback a try. That is when I noticed the problem described above.
Thanks for all the great features and hard work.
Can you create a debug log for me with v0.90.3, please? Like this: Reproduce the black screen. Let it stay black for 20 seconds, without doing anything. Then immediately close the media player.
Thunderbolt8
1st February 2016, 20:22
the way I understand this using linear light is not always the option which offers best quality, but it can also be the worse option to activate it. is that right? if so, how to define the cases in which it improves PQ and in which not?
Warner306
1st February 2016, 20:42
Would it be possible to update your wiki page with the recommanded settings for high profile (970/980 Nvidia video card) when outputing in 1080p ? You did the same for 2160p output.
I do not see a big difference between NNEDI 128 neurons and Super-XBR in term of quality. Super-XBR looks better in term of sharpen and less GPU asking.
Regards.
http://forum.kodi.tv/showthread.php?tid=222576
I'm not sure if this would be worthwhile. At 1080p, NNEDI3 is only valuable when chroma upscaling or image doubling SD -> 1080p. Chroma upscaling won't make that much of a difference at any resize. And NNEDI3 + SuperRes is better than super-xbr + SuperRes for upscaled content, but most people don't watch a lot of SD content anymore.
So I would swap all references to super-xbr with NNEDI3 and replace ordered dithering with error diffusion. However, the takeaway is there is only so much processing you need at 1080p, so you will have to live with the fact your card is already doing everything it can do. I am still using a GTS 450 and find I can use all post-processing combined with image upscaling and sometimes image doubling. If madVR adds additional post-processing options, I may have to upgrade the card, but this has worked for years now.
An overpowered GPU has much more use for upscaling to 4K than 1080p.
madshi
1st February 2016, 21:02
madVR v0.90.4 released
http://madshi.net/madVR.zip
* added Bicubic "sharpness: 150" option (useful for downscaling)
* added Shiandow's SSIM downscaling algorithm
* optimized Direct3D initialization order for 3D playback
* rendering no longer waits for OpenCL or DirectCompute to initialize
* fixed: AMD x64 GPU driver crash (added a workaround, not my fault!)
* fixed: interlaced output resulted in wrong refresh rate detected
* fixed: switching windowed -> FSE with D3D11 could result in black screen
* fixed: screenshots with "use a separate device for DXVA" sometimes failed
* fixed: incoming 4:2:2 content with odd video resolution crashed
* fixed: minor timing issue with D3D11 presentation
* fixed: OSD stopped working when no new frames came from decoder
* fixed: one potential settings dialog crash
* added IMadVRCommand::SendCommandDouble("keepLastFrameOnStop")
* added IMadVRCommand::SendCommandDouble("emptyQueue")
* last video frame is now remembered for 2 seconds when stopping graph
* added "EC_VIDEO_SIZE_CHANGED" information to "mvrInterfaces.h"
My "SSIM" implementation is slightly different to Shiandow's original implementation. Mine should be a fit faster, and should produce somewhat different (hopefully slightly better?) output. At usual downscaling factors the new Bicubic150 seems to be a fair contender to SSIM. However, when using very large downscaling factors, SSIM wipes the floor with anything else.
Thanks to Shiandow for his SSIM downscaling algorithm!
Warner306
1st February 2016, 21:04
Firstly id like to say "Yay" i finally made it haha :), Excellent reading so far, and the added security of random questions and 5 days before posting is nice. Now what i am here for is because my brain has melted and id love to have some peace of mind where it once was. I have been using MadVr and MPC-HC, I Attempted Ezoden's guide for Video Euphoria aswell as mike jung. Honestly Im not sure what to be looking for, Overall the quality seems to be nice either way With Whichever rendering setting i have used, i always aim to see more green then red. my issue however is with the jittering and stuttering if you could call it that, i could not figure out reclock. but basically i have a BENQ xl2420t monitor that i used tft centrals color calibration for in windows, i enjoy that, but am still driven to madness over how bright windows 10 is and its not in the cards for them to just give us a darn black theme. Anyway thats another story.
So with my monitor, it is 120hz, and these movies are 23.9 something , So im assuming that thats whats causing the ugly sluggish skittering/stuttering/jittering nonsense when the scene's are in motion. The quality is nice but this drives me bonkers...and i also find that 120fps with SVP is just way to fast and looks unnatural for film and ya...so can i find maybe a 60fps or anything slower that will not cause this affect? I have a good chunk of other questions and such, just looking for some help. I have $14 CAD saved in my pay pal to whomever can help me solve my biggest issue or give me the best "For DUmmies" version of why or what can or cannot be done. (possibly pictures,Click here,Do this,Try this,what looks like this with updated versions) type deal. Also i cannot seem to get reclock to uninstall :(. And my Specs are this. i5 3550 running at 4.1ghz, Gtx 980, 16 gig ram and windows 10 64bit. 2tb+ssd128. :stupid: Ty!
You don't think 23.976 fps content is smooth on a 120 Hz monitor? Are you using refresh rate switching in madVR? If not, you should. Otherwise, madVR is adding 3:2 pulldown to the frame rate. If the correct refresh rate is chosen, the "sluggishness" could be a deficiency in how your monitor handles motion (LED TVs are usually less than perfectly smooth) or it is an accurate depiction of the 24 fps source. Movie theaters use projectors with a shutter that masks the low frame rate of film, making it appear smoother than it really is. On a fixed display, 24 Hz content is better than 3:2 pulldown but usually not perfectly smooth because of the low frame count. But it shouldn't have the appearance of stopping and starting.
So, if your display is 1920 x 1080, I would make certain the display modes menu in madVR has an entry "1080p23." After that, I would use a simple audio renderer such as the MPC-HC Internal audio renderer to eliminate ReClock as the problem. Finally, if you still think something is amiss, I would take a picture of my rendering stats (Cntrl + J) and post them here for others to see.
P.S., the guides you used are not the best examples of advice on this software. I would try this thread instead: http://www.avsforum.com/forum/26-home-theater-computers/2215490-madvr-player-support-thread.html.
Thunderbolt8
1st February 2016, 21:25
when using very large downscaling factorshow is "very large" defined?
har3inger
1st February 2016, 21:45
SSIM is erroneously reporting as bicubic 150 in the OSD. Bicubic 150 is reporting as itself normally in the OSD.
Edit: Apparently madvr doesn't let you use SSIM for downscaling after image doubling. The OSD reports SSIM properly if downscale is native->smaller. Judging by image quality, the OSD isn't wrong either. bicubic 150 and "SSIM" look pretty much the same after image doubling.
SSIM is way better than anything else from 1080p->540p. Very sharp without much aliasing. It's also pretty slow (20ms render vs 10ms render with catmull rom), but not prohibitively. I find that with linear light off, things are much sharper but probably less accurate. I don't think bicubic 150 AR comes close to how good it is.
aufkrawall
1st February 2016, 21:54
SSIM looks already sharper for 4k -> WQHD than bicubic 150.
I hope it's better than lanczos in terms of moirés, I think there are some Astra HEVC samples which could show this.
Ver Greeneyes
1st February 2016, 21:56
In theory it's the "brightness" channel, but please consider how it was created: The linear light RGB video frames were converted to gamma light R'G'B', and then converted to Y'CbCr with a matrix which was originally meant to be used in linear light. Practically this means that the Y' channel is not a clean "brightness" channel, anymore. Instead the CbCr channels contain some fragments of "brightness" now, too.
Ew, I see. That makes sense I guess.
The reason I would want a separate "trade quality" option for avoiding chroma upscaling is that I'd like to use linear light for larger (>50%) scale factors. I guess I can set up a profile for 4k videos though. With 4k videos becoming more common in the future, perhaps you could put a warning on Linear Light for downscaling - something like "Note: This forces chroma doubling to be active even for small scale factors". As you could see, I got quite confused why I kept getting chroma doubling until nevcariel explained :)
madshi
1st February 2016, 22:04
how is "very large" defined?
There's no hard definition for that.
SSIM is erroneously reporting as bicubic 150 in the OSD. Bicubic 150 is reporting as itself normally in the OSD.
Are you maybe downscaling in only one direction? I'm only activating SSIM if both X and Y are downscaled.
SSIM looks already sharper for 4k -> WQHD than bicubic 150.
I hope it's better than lanczos in terms of moirés, I think there are some Astra HEVC samples which could show this.
Let me know! :)
The reason I would want a separate "trade quality" option for avoiding chroma upscaling is that I'd like to use linear light for larger (>50%) scale factors. I guess I can set up a profile for 4k videos though. With 4k videos becoming more common in the future, perhaps you could put a warning on Linear Light for downscaling - something like "Note: This forces chroma doubling to be active even for small scale factors". As you could see, I got quite confused why I kept getting chroma doubling until nevcariel explained :)
You could simply use Bilinear chroma upscaling when doing large downscale factors. Should work just fine. Hmmmm... Maybe I should do that automatically for very large downscaling factors...
Light001
1st February 2016, 22:11
The best solution is usually to try to switch your monitor to exactly the refresh rate which matches your movie framerate. So if you movie is 23.976fps, try switching your monitor to 23.976Hz. In Windows this mode is usually just called "23" instead of "23.976".
Another option is to stick to 120Hz and in madVR enable "smooth motion frame rate conversion". However, this consumes more GPU power and will not look any better (rather a little bit worse) than switching your monitor to the correct refresh rate. Unless your monitor doesn't handle 23.976Hz well. In that case madVR's "smooth motion FRC" may produce superior results. Just try both and compare.
Make sure that you don't get dropped frames in the madVR OSD (Ctrl+J). If you do, you may have to lower your madVR settings a bit because your GPU might then not be fast enough for the settings you've selected.
Firstly, Thank you for responding, So, right now in LAV i think it is, which is where in MPC-HC i Click, Settings,Internal filters,Video decoder, im using None, should i be using Cuvid for my Nvidia card or something else? What is deinterlacing? lets say for example i watch Mostly Public HD, and yify rips, aswell as a collection of Tv Shows like Star Trek TNG, and Big Bang theory, The Tv shows are lower quality, the movies range from 720p, to 1080p i have no interest in 4k or 3d. What can be done? It seems it requires alot of attention in fine tuning for different scenarios,which is why i offered to pay $14 cad, (not alot i know but i truly want to understand things but 1500+ pages of forums is a looong timmee) As far as dropped frames and things go. Ima link some pictures, So any input on stuff after would be awesome. the less programs the better, the quality is acceptable so far, but that jittery sluggish nonsense >.< agh, how do i change my screen to match the movies fps while movie plays? i have some things set up in Madvr, like 1080p23,1080p24 and so on. does it need to be exclusive mode? i only noticed one video made my screen flash black to change the refresh rate im guessing and no others did. i must be missing something. Oh and on a related note, i typically use my sound devices playback loudness equalization insted of the built in audio switcher because it does a much better job, however turning it off and on all the time sucks, if anyone knows anything about that aswell.
Sorry if this took to much room.
hu1kamania
1st February 2016, 22:40
When using CUVID deinterlacing, which output mode are you using in LAV? Film or Video? If you're using Film, also try Video. Does Video maybe produce the same problems as DXVA2 deinterlacing?
Video when using CUVID hardware deinterlacing or yadif +video with DXVA2 copy-back.
It does not produce the same problems as DXVA2 deinterlacing. With DXVA2 deinterlacing, in EVR or MadVR, sharp edges will shimmer in the first part of the scene. The last part of the video behaves correctly when in Video. I know why this is, but I don't know why the results aren't as good as what follows:
By contrast, if I turn off DXVA2 deinterlacing, and use CUVID hw deinterlacing + Video or yadif + Video, I get a smoother experience throughout. It's not perfect, but shimmering is reduced significantly. It's much harder to notice.
I would expect DXVA2 set to video to give the same results as CUVID Video (or better because madshi is a wizard!), but that does not appear to be the case.
Congrats on 90.4, I look forward to testing out the new downscaling algorithm!
Ver Greeneyes
1st February 2016, 22:51
You could simply use Bilinear chroma upscaling when doing large downscale factors. Should work just fine. Hmmmm... Maybe I should do that automatically for very large downscaling factors...
Well, I still have to imagine that only downscaling the luma channel is going to be about 3x as cheap as downscaling R, G and B separately :) But I'm sure you know the tradeoffs best.
This whole discussion does make me wonder again if scaling in a perceptual space like CAM02-UCS (http://onlinelibrary.wiley.com/doi/10.1002/col.20227/abstract) would be even better than this linear light stuff - but I couldn't tell the difference when I implemented it with some pre- and post-resize shaders in MPC-HC a while back (it's not a very fast transformation, either).
QBhd
1st February 2016, 23:15
What's the consensus on SSIM with LL? On or Off?
QB
aufkrawall
1st February 2016, 23:21
With a game screenshot, the effect seems to be identical compared to other algorithms. I guess this also goes for synthetic test images.
Edit: Have to take this back: LL should be used with SSIM, as GL introduces quite some amount of aliasing.
4k -> WQHD
Bicubic 150 LL AR:
http://abload.de/thumb/bicfeuoa.png (http://abload.de/image.php?img=bicfeuoa.png)
SSIM: LL AR:
http://abload.de/thumb/ll0gu3s.png (http://abload.de/image.php?img=ll0gu3s.png)
SSIM AR:
http://abload.de/thumb/gljhu6p.png (http://abload.de/image.php?img=gljhu6p.png)
Edit 2:
Something's severely wrong with SSIM GL. Is it a bug? If not, I think the checkbox for choosing LL/GL should be removed for SSIM and LL should always be used with it.
Bicubic 150 LL:
http://abload.de/thumb/bic150lldjju5.png (http://abload.de/image.php?img=bic150lldjju5.png)
Bicubic 150 GL:
http://abload.de/thumb/bic150glwzk10.png (http://abload.de/image.php?img=bic150glwzk10.png)
SSIM LL:
http://abload.de/thumb/llkiklw.png (http://abload.de/image.php?img=llkiklw.png)
SSIM GL:
http://abload.de/thumb/gl0gj4n.png (http://abload.de/image.php?img=gl0gj4n.png)
I must say that I really like the sharpness of SSIM. :)
A very useful option, thanks a lot Shiandow and madshi!
iSeries
1st February 2016, 23:55
SSIM is erroneously reporting as bicubic 150 in the OSD. Bicubic 150 is reporting as itself normally in the OSD.
I'm seeing this too, SSIM is not used when doubling 720p and then downscaling to 1080p. It would seem it's falling back to bicubic 150 (as reported in the OSD, and switching between SSIM and bicubic 150 results in no visible difference and no difference in rendering times). Does SSIM not work with downscaling after image doubling?
Warner306
2nd February 2016, 00:03
Firstly, Thank you for responding, So, right now in LAV i think it is, which is where in MPC-HC i Click, Settings,Internal filters,Video decoder, im using None, should i be using Cuvid for my Nvidia card or something else? What is deinterlacing? lets say for example i watch Mostly Public HD, and yify rips, aswell as a collection of Tv Shows like Star Trek TNG, and Big Bang theory, The Tv shows are lower quality, the movies range from 720p, to 1080p i have no interest in 4k or 3d. What can be done? It seems it requires alot of attention in fine tuning for different scenarios,which is why i offered to pay $14 cad, (not alot i know but i truly want to understand things but 1500+ pages of forums is a looong timmee) As far as dropped frames and things go. Ima link some pictures, So any input on stuff after would be awesome. the less programs the better, the quality is acceptable so far, but that jittery sluggish nonsense >.< agh, how do i change my screen to match the movies fps while movie plays? i have some things set up in Madvr, like 1080p23,1080p24 and so on. does it need to be exclusive mode? i only noticed one video made my screen flash black to change the refresh rate im guessing and no others did. i must be missing something. Oh and on a related note, i typically use my sound devices playback loudness equalization insted of the built in audio switcher because it does a much better job, however turning it off and on all the time sucks, if anyone knows anything about that aswell.
Sorry if this took to much room.
Check the Kodi links in my signature for help with profiles.
madshi
2nd February 2016, 01:08
how do i change my screen to match the movies fps while movie plays?
Which refresh rates does Windows offer for your screen at 1080p?
Might make sense to enable the madVR OSD by pressing Ctrl+J. Then check which refresh rate madVR detects. Most important probably is Blu-Ray playback, I suppose? In that case it might make sense to make a screenshot of the madVR OSD screen when playing a Blu-Ray through madVR, and then upload the screenshot somewhere for us to look at. Please don't attach stuff to this forum, takes ages to get it approved. Upload it to some image host.
Video when using CUVID hardware deinterlacing or yadif +video with DXVA2 copy-back.
It does not produce the same problems as DXVA2 deinterlacing. With DXVA2 deinterlacing, in EVR or MadVR, sharp edges will shimmer in the first part of the scene. The last part of the video behaves correctly when in Video. I know why this is, but I don't know why the results aren't as good as what follows:
By contrast, if I turn off DXVA2 deinterlacing, and use CUVID hw deinterlacing + Video or yadif + Video, I get a smoother experience throughout. It's not perfect, but shimmering is reduced significantly. It's much harder to notice.
I would expect DXVA2 set to video to give the same results as CUVID Video (or better because madshi is a wizard!), but that does not appear to be the case.
Let's first decide which issue to discuss. Earlier you talked about smooth playback. Now you're talking about shimmering edges. These are two totally separate issues. The first is an issue which may have to do with frame drops, or a mismatch between movie frame rate and display refresh rate or things like that. The latter is an issue with the deinterlacing algorithm quality. It's not impossible that both issues have the same cause, but it's more likely that it's two different things. In any case, when debugging smoothness problems, I'd ask totally different questions than when debugging shimmering edges.
In any case, please check the Ctrl+J madVR OSD to see if there are dropped frames during playback. Only once you've stopped madVR from dropping frames it makes sense to debug all problems which are then still remaining.
Well, I still have to imagine that only downscaling the luma channel is going to be about 3x as cheap as downscaling R, G and B separately :) But I'm sure you know the tradeoffs best.
It doesn't work like that, though. A pixel shader reads one pixel, which usually consists of 4 elements (R, G, B and A). Then for scaling you calculate a weight, which is usually the same for all 4 elements. And then finally, you do some math. When only scaling one channel, you save a tiny bit of math. But the reading/writing and weight calculation is the same. So you really only save very little. At least when talking about algorithms like Bicubic, or also SSIM. NNEDI3 is a different beast, though.
This whole discussion does make me wonder again if scaling in a perceptual space like CAM02-UCS (http://onlinelibrary.wiley.com/doi/10.1002/col.20227/abstract) would be even better than this linear light stuff - but I couldn't tell the difference when I implemented it with some pre- and post-resize shaders in MPC-HC a while back (it's not a very fast transformation, either).
Gamma is a (very) rough approximation of a perceptual space, too.
With a game screenshot, the effect seems to be identical compared to other algorithms. I guess this also goes for synthetic test images.
Edit: Have to take this back: LL should be used with SSIM, as GL introduces quite some amount of aliasing.
Interesting. I just wish people would start including the original unscaled image in their screenshot comparisons. Almost nobody does. So we devs can only look at your results, but we can't reproduce them.
I must say that I really like the sharpness of SSIM. :)
A very useful option, thanks a lot Shiandow and madshi!
And how do you like Bicubic150? To my eyes in your screenshot comparison it doesn't look all that different to SSIM (when using LL)?
I'm seeing this too, SSIM is not used when doubling 720p and then downscaling to 1080p. It would seem it's falling back to bicubic 150 (as reported in the OSD, and switching between SSIM and bicubic 150 results in no visible difference and no difference in rendering times). Does SSIM not work with downscaling after image doubling?
Ah yes. I'm currently not using SSIM when downscaling after doubling. The reason is that SSIM has its strength in reproducing/restoring image detail. When doubling images you can get reasonably sharp images, but you can't magic true image detail into the upscaled image. Which means that IMHO running SSIM on a double image would be sort of a waste of performance. I'd rather use Bicubic150 in that situation.
That said, I suppose I could make SSIM available in that setup, just to let you guys play with it. But I don't think it will be any better than Bicubic150, after image doubling, because the doubled image will simply lack the fine image detail SSIM was made for.
Anima123
2nd February 2016, 01:53
madshi, using SSIM with doubled image may not be such a bad idea. I have 'played' with SSIM with MPDN a little bit, and was quite satisfied with the effect it produced, where SuperRes was scalsed to 1.5 x outputsize, then downscaled to 1080p via SSIM.
hu1kamania
2nd February 2016, 02:19
Let's first decide which issue to discuss. Earlier you talked about smooth playback. Now you're talking about shimmering edges. These are two totally separate issues. The first is an issue which may have to do with frame drops, or a mismatch between movie frame rate and display refresh rate or things like that. The latter is an issue with the deinterlacing algorithm quality. It's not impossible that both issues have the same cause, but it's more likely that it's two different things. In any case, when debugging smoothness problems, I'd ask totally different questions than when debugging shimmering edges.
In any case, please check the Ctrl+J madVR OSD to see if there are dropped frames during playback. Only once you've stopped madVR from dropping frames it makes sense to debug all problems which are then still remaining.
No dropped frames in DXVA2 Video Mode, only repeated for the first half of the clip I posted. With CUVID in Video I don't get dropped or repeated frames.
Shimmering IS related to deinterlacing, because the first part of the clip needs IVTC, thus Film mode, correct? Film works perfect until the second half of the clip starts to jerk from dropped frames.
JarrettH
2nd February 2016, 02:26
Is SSIM better at downscaling than catmull-rom? I thought it was decided that catmull-rom was "the best" downscaler
I'm using super-xbr as a doubler for 720p content on a 1080p monitor.
Ver Greeneyes
2nd February 2016, 02:37
It doesn't work like that, though. A pixel shader reads one pixel, which usually consists of 4 elements (R, G, B and A). Then for scaling you calculate a weight, which is usually the same for all 4 elements. And then finally, you do some math. When only scaling one channel, you save a tiny bit of math. But the reading/writing and weight calculation is the same. So you really only save very little. At least when talking about algorithms like Bicubic, or also SSIM. NNEDI3 is a different beast, though.
I see! Nevermind me then :)
Gamma is a (very) rough approximation of a perceptual space, too.It's part of it, but perceptually linear space ends up with a lightness component, and two components representing the sine and cosine of the hue angle. I don't think I ever graphed how linear RGB maps to the final perceptual space, might be interesting to see a vector arrow plot or something. Either way, I doubt it'd be worthwhile to do in madVR (and probably too slow or inaccurate without some 3DLUTs to handle the forward and inverse transforms - single precision math loses a lot of precision on this transform).
har3inger
2nd February 2016, 03:05
Is SSIM better at downscaling than catmull-rom? I thought it was decided that catmull-rom was "the best" downscaler
I'm using super-xbr as a doubler for 720p content on a 1080p monitor.
Depends what you're after. Catmull-rom is probably the most mathematically correct, but SSIM is more perceptually correct in preserving fine detail.
To my understanding, if you had an identically-sized screen at the same distance from your face, but one was 1080p and one was 4k and both were playing the same 4k video, SSIM would make the 1080p screen look closer to what the 4k screen looks like, and CR would make the image softer, but mathematically closer to the original 4k source. The algorithm uses higher contrast edges to enhance higher frequency detail when spacial resolution is unable to reproduce those higher frequencies.
macycat
2nd February 2016, 06:18
Can you create a debug log for me with v0.90.3, please? Like this: Reproduce the black screen. Let it stay black for 20 seconds, without doing anything. Then immediately close the media player.
No problem - http://www.filedropper.com/madvr-log
Thanks for looking into this. :)
omarank
2nd February 2016, 07:01
You could simply use Bilinear chroma upscaling when doing large downscale factors. Should work just fine. Hmmmm... Maybe I should do that automatically for very large downscaling factors...
If you did that, I would request you to keep it as a trade quality option. 4k to FHD linear light downscaling looks great with Jinc AR chroma upscaling.
* added Shiandow's SSIM downscaling algorithm
I am very impressed with SSIM AR LL. I was already too satisfied with Catmull Rom AR LL and never realized what I was missing until I tried SSIM. Thanks Shiandow and madshi for this amazing addition!
ryrynz
2nd February 2016, 08:34
SSIM in madVR is super sharp. It's actually a lot sharper than when LL is enabled :confused: Did you tweak it too far?
Bilinear 150 doesn't look too bad, starting to look a touch artificially sharp though, prefer Shandow's original SSIM over it, but a good alternative. Strangely Your SSIM implementation with LL is actually closer to Shiandow's but of course the whites are all blown out as a result which seems to be a common thing when using LL. It certainly doesn't look good on things like the white kanji in the bottom right corner of the video. I think you might need to tweak it less.
Images (https://mega.nz/#!2IwGCDRa!K2wCdoJxsnh96mxwNoIBO32ypvg_j1AsLBxBUWOJ8tg) (video linked in MPDN thread)
Something's severely wrong with SSIM GL. Is it a bug? If not, I think the checkbox for choosing LL/GL should be removed for SSIM and LL should always be used with it.
I think something is wrong, because the original implementation actually looks closer to when LL is enabled than GL.
sat4all
2nd February 2016, 09:29
* fixed: switching windowed -> FSE with D3D11 could result in black screen
Firstly, thanks for your generous work.
I'm still experiencing the same behaviour when using D3D11 path, my tv claims no signal for couple of seconds when switching to FSE mode.
Intel NUC Haswell (HD 5000) & Win 10 x64 with lastest intel graphics driver.
iSeries
2nd February 2016, 13:50
Ah yes. I'm currently not using SSIM when downscaling after doubling. The reason is that SSIM has its strength in reproducing/restoring image detail. When doubling images you can get reasonably sharp images, but you can't magic true image detail into the upscaled image. Which means that IMHO running SSIM on a double image would be sort of a waste of performance. I'd rather use Bicubic150 in that situation.
That said, I suppose I could make SSIM available in that setup, just to let you guys play with it. But I don't think it will be any better than Bicubic150, after image doubling, because the doubled image will simply lack the fine image detail SSIM was made for.
Ah I understand. I wouldn't mind playing around with it if you do decide to enable it for doubling.
That said, I quite like the new Bicubic 150. In fact I like it better on it's own than Catmull-Rom + Superres when image doubling. I'm not sure I like what Superres does, it seems to sharpen some areas of an image, but also blur other areas, and it looks a little unnatural to me. Just using NNEDI3 to double and Bicubic 150 LL to downscale to me looks great. As far as I understand Catmull-Rom is actually just Bicubic 50, so Bicubic 150 is just a sharper version? It definitely is far sharper, that's for sure.
aufkrawall
2nd February 2016, 14:26
And how do you like Bicubic150? To my eyes in your screenshot comparison it doesn't look all that different to SSIM (when using LL)?
I suspect I was tricked by the bicubic option sometimes jumping to 100 instead of 150 when switching between SSIM and bicubic.
For 4k -> WQHD, bicubic might be the more reasonable choice then.
(the comparisons are correct though)
4k pictures:
http://www74.zippyshare.com/v/rCbbGh4v/file.html
leeperry
2nd February 2016, 16:34
I am very impressed with SSIM AR LL. I was already satisfied with Catmull Rom AR LL and never realized what I was missing until I tried SSIM. Thanks Shiandow and madshi for this amazing addition!
X2, couldn't have said it better :thanks:
TMDaines
2nd February 2016, 17:01
I don't think there's anything specific you need to do to enable the LAV DVD subtitle export. Can you create a small sample for me to double check / reproduce this problem on my PC?
What format do you want this in? VOBs?
madshi
2nd February 2016, 17:41
madshi, using SSIM with doubled image may not be such a bad idea. I have 'played' with SSIM with MPDN a little bit, and was quite satisfied with the effect it produced, where SuperRes was scalsed to 1.5 x outputsize, then downscaled to 1080p via SSIM.
Which downscaling algorithm did you compare it to, though? The key question is whether it's useful to use SSIM in that specific situation as opposed to e.g. Bicubic150, which is also very sharp and noticeably faster.
No dropped frames in DXVA2 Video Mode, only repeated for the first half of the clip I posted. With CUVID in Video I don't get dropped or repeated frames.
Repeated frames when using DXVA2? That sounds weird. DXVA2 should produce double frame rate, so there should be no repeated frames. Do you have IVTC enabled in your GPU driver control panel? Try disabling it.
No problem - http://www.filedropper.com/madvr-log
Thanks for looking into this. :)
Will have a look at this later, when I find some time.
I think something is wrong, because the original implementation actually looks closer to when LL is enabled than GL.
Yeah, after double checking it seems some of the texture formats I'm using are not a good match. That didn't show with the test images I used. Should be fixed in the next build.
Firstly, thanks for your generous work.
I'm still experiencing the same behaviour when using D3D11 path, my tv claims no signal for couple of seconds when switching to FSE mode.
Intel NUC Haswell (HD 5000) & Win 10 x64 with lastest intel graphics driver.
The bug fix in the changelog you're referring to was for a continous black screen, not just for a short period of display blanking. If your display blanks for a short time when switching to FSE mode that's probably not something I can do anything about.
Ah I understand. I wouldn't mind playing around with it if you do decide to enable it for doubling.
That said, I quite like the new Bicubic 150. In fact I like it better on it's own than Catmull-Rom + Superres when image doubling. I'm not sure I like what Superres does, it seems to sharpen some areas of an image, but also blur other areas, and it looks a little unnatural to me. Just using NNEDI3 to double and Bicubic 150 LL to downscale to me looks great. As far as I understand Catmull-Rom is actually just Bicubic 50, so Bicubic 150 is just a sharper version? It definitely is far sharper, that's for sure.
Yes, Catmull-Rom = Bicubic50. And Bicubic150 is a sharper version of Bicubic50. I wouldn't ever use Bicubic150 for upscaling, but it seems to work well for downscaling, if you want to get very sharp results. SSIM should still be superior, but it's also slower.
I suspect I was tricked by the bicubic option sometimes jumping to 100 instead of 150 when switching between SSIM and bicubic.
It does jump to 100? It shouldn't do that, it should remember its old position. Can you reproduce that? How?
You didn't my answer question yet how you like Bicubic150? :)
What format do you want this in? VOBs?
It doesn't matter, as long as I can reproduce the problem you reported with the sample. Usually the LAV Subtitle Renderer only becomes active when using the DVD Navigator, and that one only becomes active when playing a DVD with all its support files. But if the same problem can be reproduced by just using the VOB, and maybe XySubFilter, then I'm fine with that, too. The only thing is, I need to be able to reproduce the problem somehow...
aufkrawall
2nd February 2016, 18:05
You didn't my answer question yet how you like Bicubic150? :)
Didn't I boldly imply the answer? :)
I really like SSIM and there's hardly a difference to bicubic 150 with 4k -> WQHD.
So, yes, I also really like bicubic 150 for downscaling. It's not that SSIM would be very expensive regarding GPU resources, but bicubic probably is better suited for a GPU like GTX 960, at least with 60fps (+deband etc.).
SSIM sometimes seems to be slightly sharper with structures like dense foliage, but bicubic 150 is slightly sharper (or more contoured) with isolated elements like the metal structures in my screenshots above.
I haven't noticed any unpleasant effects so far with bicubic 150. I'm curious what others will find out, but I think it's really a good and relatively fast option to downscale videos if a high sharpness is desired.
Is it really the same bicubic algorithm as with old builds, just with c = 1.5?
If yes, why did no one have this idea earlier? :D
Regarding jumping bicubic sharpness setting: Yes, it did this a few times. I haven't yet found out how to reproduce.
Sunset1982
2nd February 2016, 18:24
I'm using NNEDI3 32 to upscale 1080p videos to my tv's 4k resoltution.
What upscaling algorithm yould you guys suggest to use for 4k video files which only chroma has to be upscaled? Needi3 for chroma? And which one for luma/image?
aufkrawall
2nd February 2016, 18:45
NNEDI3 32 should be fine. 64 would of course be better, but with 1080p sources, there should be enough resolution for NNEDI3 32 to mostly avoid obvious failure.
If you have enough GPU power left (I guess not, at least not with 60fps?), you should also make use of SuperRes. Else you might want to use super-xbr + SuperRes instead of NNEDI3, it should look better with clean 1080p sources than just NNEDI3 without SR.
If you have enough GPU resources, there's no reason not to use NNEDI3 for chroma without luma scaling. It should show fewest artifacts of all chroma scalers. However, it mostly doesn't matter since the diffeerences are usually ever so small.
CarlosCaco
2nd February 2016, 20:15
I having an issue with FSE. On my new laptop even using nvidia 930m to render the hmdi output pass thru intel hd graphics, i don t know why the display modes from my tv that was near perfect sync on my old laptop, are totaly broken on my new laptop, Intel driver overscaned the resolution forcing tv to downscan producing blurred terrible results... Also the modes are not synced very good, ex 1360x768p23 = 23.930 and this driver don t allow me to me override the modes with custom resolutions...
For some reason that i don't know the driver alowed me to override only the 24 mode that i can fine tune to 23.97694, that was very Nice because i almost only Watch 23.976 but heres the problem
When i set the resolution to 1360x768p24 and start a 23.976 movie and go to FSE (d3d9 and d3d11) the resolution is automatic changed to 23 mode Causing heavy jitter and stutter because is 23.930, i tried everything, not list 23 mode, turn off the display matching but nothing works, this only happen on FSE, in fullscreen windowed don t happen but FSE on my laptop has superior smoothnes...
Also d3d11 FSE don't work, the queuse don t fill and video has heavy gosthing Lightning artifacts
vinnytx
2nd February 2016, 21:19
I set this rule
if (srcWidth > 1920) and (bitDepth > 15000) "4096 high bitrate"
but the condition bitDepth is ignored
Xaurus
2nd February 2016, 21:34
I set this rule
if (srcWidth > 1920) and (bitDepth > 15000) "4096 high bitrate"
but the condition bitDepth is ignored
Seems to me you are mixing up bit depth and bitrate?
Asmodian
2nd February 2016, 22:16
A bit depth of 15000 would be a bit excessive I would think, most image formats max out at 16 bit. ;)
At 1080p that would be 86.9 Gb/frame for uncompressed RGB! :D
StinDaWg
2nd February 2016, 22:51
* fixed: switching windowed -> FSE with D3D11 could result in black screen
Well, this is sort of fixed for me, but not really. Instead of getting a black screen when switching out of FSE to windowed in D3D11, I just get a still image from the last part of the video. When I go back to FSE it resumes fine.
In other words, I can't watch anything in windowed mode after leaving FSE D3D11 because it just shows a still image while audio keeps playing. D3D9 works fine as usual.
Using AMD 7850.
Also, when going from FSE to windowed and back to FSE in D3D11 sometimes the present queue will drop down to 1-3 and it will never recover, while the preset stats also increase ~10ms and don't drop again.
This usually also happens after the windows screen saver comes on while a video is paused. Doesn't happen in D3D9. To reproduce set windows screen saver to 1 minute, pause video, let screen saver kick in then play video. Check OSD. Stats are increased and present queue drops to 1 and can't recover.
I have windows screen saver set to 1 minute because I have a plasma and want to minimize IR/burn in.
krille
2nd February 2016, 22:59
With the latest release of madvr if i choose SSIM as the downscaling algo it only seems to apply when downscaling higher resolutions to 1080p. When downscaling after NNEDI3 or super-xbr it seems to choose the same downscaler as the choosen upscaler, for example Lanczos, and sometimes Bicubic 150 even tough I have choosen SSIM.
ryrynz
2nd February 2016, 23:10
Madshi could you throw in Bicubic 125 into the mix? Or perhaps you could allow the user to increase it by increments of 1 (could apply to other scalers as well)
GCRaistlin
2nd February 2016, 23:20
0.90.4 detects the display's refresh rate incorrectly. I'm playing a PAL video slowed down with ReClock on the display that is currently 24 Hz - madVR displays that is is 60 Hz.
hu1kamania
2nd February 2016, 23:57
Repeated frames when using DXVA2? That sounds weird. DXVA2 should produce double frame rate, so there should be no repeated frames. Do you have IVTC enabled in your GPU driver control panel? Try disabling it.
I disabled it, with the same results. Still getting repeated frames with DXVA2 and Forced to Video in MadVR with that portion of the clip.
BetA13
3rd February 2016, 02:47
madVR v0.90.4 released
http://madshi.net/madVR.zip
[code]
* fixed: interlaced output resulted in wrong refresh rate detected
Thanks to Shiandow for his SSIM downscaling algorithm!
hy madshi,
First off, thanks a lot, it works now. everything is in order..
Theres only one thing thats different, its not really worth mentioning, but im a perfectionist in this things.
(i belive this didnt happened in 0.89.19)
In fullscreen exclusive mode, when i move the mouse downwards to the playback bar, the Present queue and backbuffer queue go crazy, they drop to 1 and then build up again when the PLayback bar is gone again.
Present queue goes crazy the most..
And teh rendering miliseconds get up also. from 13 - 21 ms.
The present rendering time gets up to 100ms.
it isnt really that important since i dont move the mouse all the time, but still its strange, since this didnt happened before..
some screens if they help, it shows the drop when i move the mouse:
No mouse movement:
http://s12.postimg.org/ne7dcahih/mpc_hc_2016_02_03_02_39_10_030.jpg (http://postimg.org/image/ne7dcahih/)
Mouse moved downward to playback Bar:
http://s12.postimg.org/5oaqoda95/mpc_hc_2016_02_03_02_39_14_070.jpg (http://postimg.org/image/5oaqoda95/)
Playback bar is showing and i dont move the mouse:
http://s12.postimg.org/h1x9zkkrt/mpc_hc_2016_02_03_02_39_15_270.jpg (http://postimg.org/image/h1x9zkkrt/)
moving mouse away from bottom to get back to normal:
http://s12.postimg.org/p8p9r5auh/mpc_hc_2016_02_03_02_39_25_683.jpg (http://postimg.org/image/p8p9r5auh/)
Theres deffinitly something different then in 0.89.19.
Greetings :)
edit:
SSIM schows up as bicubic 150 in windowed and fullscreen mode..
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.