View Full Version : madVR - high quality video renderer (GPU assisted)
e-t172
17th September 2012, 18:25
Ah, thanks, that makes sense. Is there something like SetGammaRamp for colors, too? Or does the GPU only support gamma manipulations via ICC profiles? How are colors managed then?
I'm not sure I understand your question.
SetGammaRamp allows to set three 1D-LUTs (one for red, green, and blue). It's not one gamma ramp, it's three (3x1D-LUT). See D3DGAMMARAMP (http://msdn.microsoft.com/en-us/library/bb172561.aspx).
When you set a ICC profile in the Windows color options, it doesn't do anything in itself. You need a ICC profile loader (such as xcalib (http://xcalib.sourceforge.net/) - most calibration software come with something similar that runs at windows startup) to apply the profile to your video output. The loader usually takes the ICC profile set in the Windows color options (although that's just a design choice, technically it could just use any ICC profile), extracts the info it needs, and then calls SetGammaRamp to apply the profile to the video output.
Of course, because SetGammaRamp only supports 3x1D-LUT, only part of the ICC profile is used and the result is not a complete calibration (white points and gamma is corrected, but hue and saturation stay untouched). There are also issues with some software like some games (e.g. Crysis) that erase the gamma ramps and don't restore them on exit; that's why I have a scheduled task that runs my calibration loader each minute to make sure it stays on.
These gamma ramps have 16-bit precision per color (i.e. they convert from 8-bit to 16-bit). Not sure if all hardware use the extra 8 bits. Ideally the GPU should dither the results, but we would be lucky if they do.
My dream would be to have an API like SetGammaRamp but with a better design (no hijacking from applications) and with 3DLUT capabilities. If we had that, then we could just apply a 3DLUT for the entire Windows desktop and be done with it. But I can only dream.
madshi
17th September 2012, 18:26
madshi
When madvr renders this sample it detects 3:3 cadence and switches to 23.976 display refresh rate in film mode.
I guess it should switch to 59.94 for this 3:3 cadence?
The sample is silent film and original frame rate is 21.4 fps http://www.imdb.com/title/tt0018737/.
The sample: https://dl.dropbox.com/u/43376972/Pandora%203-3%20cadence.mkv
Edit:
So if original frame rate is funny 21.4 fps, they should transfer this silent film this way:
21.4 fps -> 19,98p (59,94/3) -> 59,94i (2:2:2 cadence) ?
Thanks for that sample! Yeah, I think they've slowed those 21.4fps down to 19.98p and then simply applied a 3:3 cadence to get to 59.94i.
And yes, you're right. Switching to 59p would make more sense for this sample than switching to 23p. However, my current refresh rate changer is too stupid to actually care about which cadence was detected. As soon as you activate film mode with 59i content, the refresh rate changer thinks: Oh, this is a movie, so it must be 23p. And in 99.9% of all cases that's right. It even works for most Anime stuff. This 3:3 sample is one of a very rare exceptions. Well, it should play ok with 23p, too, but it should be a more fluid with 59p, of course. Anyway, not easy for me to fix. One of the problems is that cadences can break. What happens if a movie partially consists of 3:2 cadences and then switches to 3:3 cadences in between? Should madVR then switch from 23p to 59p and later back again? Not really sure how to handle this right now. I've some ideas for a future version, but it's not easy to fix right now, so you'll have to live with the current situation at the moment. I'll keep this in mind, though...
madshi
17th September 2012, 18:30
I'm not sure I understand your question.
SetGammaRamp allows to set three 1D-LUTs (one for red, green, and blue). It's not one gamma ramp, it's three (3x1D-LUT).
When you set a ICC profile in the Windows color options, it doesn't do anything in itself. You need a ICC profile loader (such as xcalib (http://xcalib.sourceforge.net/) - most calibration software come with something similar that runs at windows startup) to apply the profile to your video output. The loader usually takes the ICC profile set in the Windows color options (although that's just a design choice, technically it could just use any ICC profile), extracts the info it needs, and then calls SetGammaRamp to apply the profile to the video output.
Of course, because SetGammaRamp only supports 3x1D-LUT, only part of the ICC profile is used and the result is not a complete calibration (white points and gamma is corrected, but hue and saturation stay untouched). There are also issues with some software like some games (e.g. Crysis) that erase the gamma ramps and don't restore them on exit; that's why I have a scheduled task that runs my calibration loader each minute to make sure it stays on.
These gamma ramps have 16-bit precision per color (i.e. they convert from 8-bit to 16-bit). Not sure if all hardware use the extra 8 bits. Ideally the GPU should dither the results, but we would be lucky if they do.
From the very limited knowledge I gained when working with the yCMS developer, I thought that 3x1D-LUTs could not be used to calibrate colors in any reasonable way, because each 1D-LUT has no influence on the other 2 1D-LUTs. So those 3x1D-LUTs is all that is supported by the GPU and by Windows in terms of calibration? That's rather poor, I'd say...
e-t172
17th September 2012, 18:38
Indeed it is. As I said, you can still use 3x1D-LUTs to calibrate gamma and make sure white points follow the D65 illuminant. That's all it can do, but it's better than nothing IMO. You're out of luck for saturation and hue because fixing them would require (R, G, B) = f(r, g, b) (3D-LUT) instead of (R, G, B) = (f(r), f'(g), f''(b)) (3x1D-LUT).
That's why image editing software like Photoshop don't use hardware LUTs and use their own 3DLUT implementation like madVR does. You just have to be careful not to use both at the same time, for obvious reasons.
madshi
17th September 2012, 18:46
K, thanks.
leeperry
17th September 2012, 19:11
That's why I made a feature request ages ago to have madVR reset these tables (and restore them at the end of playback): to avoid the obvious double conversion issue when using madVR's 3DLUTs and the hardware LUTs simultaneously.
If that's ever considered, please be so kind as to make it optional because at this point there is no way to merge the 3x1D LUT data(such as a .cal file from Argyll) into a 3DLUT AFAIK, so both color corrections are required. Surely, if that's ever made possible, this option might come in handy to those who use 3DLUT's in mVR.....but I use a .cal file in Argyll in order to get my display to reach D65/2.4 in all Windows apps and 3DLUT files in ffdshow/avisynth to map gamuts, so I very much require mVR to not reset the graphic card's 10bit CLUT.
omarank
17th September 2012, 19:55
It seems to working just fine here. Which splitter/"decoder" is used on your PC to display images?
I use LAV Filters [Splitter + Video decoder + Audio decoder]. I attached a madVR crash report in my last post. I could see some division by zero exception in that report. Didn't it help?
Boltron
17th September 2012, 20:47
You say you have calibrated it. How? Did you use the display controls to do the calibration? Or did you use yCMS? If you calibrated the display by using the display controls then in the madVR settings you should set it to "this display is already calibrated".
Depends on whether you watch in the same lighting conditions all the time or not. If you watch in sunlight or with room lights on, using e.g. a pure power curve of 2.20 might make sense. And that's probably what you calibrated your display to? However, if you watch at night with all lights turned off, going to a gamma curve of maybe 2.35 might make sense. So if you want to switch between different gamma values to adjust for different lighting situations, turn gamma processing on. Otherwise turn it off.
I calibrated using display controls, colorimeter and Chromapure software. I will then keep madVR set to "this display is already calibrated".
My set is in the basement and the room is always dimly lit. I will then keep it off.
Thanks for taking the time to reply!
Nicola
18th September 2012, 09:31
mmm, I didn't read al the topic, it's too long, but I have a question:
ages ago I hit the limit of my gpu (GeForce8500GT) using madvr and scaling 720p content to full HD monitor res, but couldn't really afford a new gpu.
right now I should be able to get a GeForce GT 610 for cheap, so I'd like to ask if it's powerful enough for madvr (lol, but yeah).
Thanks.
madshi
18th September 2012, 12:56
madshi
When I try to switch Film-> Video (23hz -> 59 hz) using Cntrl+Alt+Sh+T I get red message resetting Direct3D device failed (8876086c).
Log and freeze report: http://dl.dropbox.com/u/43376972/LOG%20MADVR.zip
Thanks!
I've changed something to improve this. Could you please retest with the next build, once it's released? Thanks.
If that's ever considered, please be so kind as to make it optional because at this point there is no way to merge the 3x1D LUT data(such as a .cal file from Argyll) into a 3DLUT AFAIK, so both color corrections are required.
Can't you create a 3DLUT which also does the same which those 3x1D LUTs do?
I use LAV Filters [Splitter + Video decoder + Audio decoder]. I attached a madVR crash report in my last post. I could see some division by zero exception in that report. Didn't it help?
The crash report didn't help too much, unfortunately. I don't think LAV supports displaying images/pictures? Please check which filters are used on your PC if you try to display pictures. If you can't find out due to the crash, try a different video renderer.
right now I should be able to get a GeForce GT 610 for cheap, so I'd like to ask if it's powerful enough for madvr (lol, but yeah).
Maybe just fast enough for 1080p24 with 2-tap resizers. Probably not fast enough for anti-ringing lanczos and/or 1080p60. But I don't really know for sure. Of course you can always switch to "Bilinear" scaling, but that would be a really sad solution...
Pat357
18th September 2012, 13:58
So madVR reports a video size of 720x480 and a preferred aspect ratio resolution of 853x480. The correct AR resolution would be 853.333333x480, but madVR has no way to pass this information to the media player, so it rounds down to 853x480.
So only integers are allowed, but what about 2560:1440 as AR ? Should give exact 1920*1080 after scaling. :p
Just kidding..;)
leeperry
18th September 2012, 14:19
Can't you create a 3DLUT which also does the same which those 3x1D LUTs do?
Well, the 1D LUT's are generated by ArgyllCMS and loaded into the graphic card's CLUT, then they are applied in actual 10bit(Argyll provides a small app to check that) due to the fact that I'm outputting VGA. I very much enjoy having a well calibrated display corrected in 10bit, then I do the gamut mapping in ffdshow via automatic scripts. It's all automatic and works flawlessly.
Surely, if outputting TMDS and if there were an app allowing to merge my .cal Argyll file into a 3DLUT then resetting the graphic card's CLUT would theoritically be a better choice but sometimes I like to K.I.S.S. :)
mirkosp
18th September 2012, 15:40
So we're talking about a native RGB video here? Can you send me a sample?
No, I didn't test with RGB videos. I realized there was this problem with a Hi444PP video, since vsfilter doesn't support Hi444PP and thus it gets converted to RGB32 before it's passed to it, but I can reproduce the issue with Hi10P and HiP files too when I force RGB32. Ideally any file with subtitles embedded will do, as long as rgb32 is being forced. Which means rgb32 video will work too for testing, obviously, but isn't strictly required.
As I said, the issue is only present if vsfilter or xyvsfilter is handing the stream to madvr. I tested, and pc level rgb32 output directly from lav and cccp's ffdshow is properly handled by madvr.
As a sort of off-topic side note: the fact that vsfilter doesn't support hi444pp currently means that it's converted to rgb by lav/ffdshow with the proper matrix, which means when hi444pp support will be added to xy/vsfilter, there won't be any need for the rec.601 hack with 4:4:4 videos! :)
cyberbeing
18th September 2012, 17:38
VSFilter & xy-VSFilter only support full-range RGB. If the decoder passes limited range RGB, subtitles will get double expanded by the video renderer. That said, it is a bit of a problem that madVR double-expands full-range RGB by default when a YCbCr bitstream is flagged as limited-range, and VSFilter is in the graph.
I ran into this problem as well when madshi was taking his break, but forgot to report it. The temporary workaround is to use CTRL+ALT+SHIFT+I & F2 change the default from auto-detect to PC range until you are done watching such files. For the next madVR version, I think it would be better if madVR always assumed RGB to be fullrange when connected to VSFilter.
madshi
18th September 2012, 17:42
Ok, now I understand the problem better. It shouldn't be hard to fix that without having to specifically look for (xy-)VSFilter.
mzso
18th September 2012, 21:07
Do you still have these problems? If so, can you sum them up again for me? Your reports are so spread over this thread that I lost overview.
Well, with my sample (https://docs.google.com/open?id=0ByfdfPvnoDuzWkI4YjVHNndqRVE) it still happens using madVR antiringing v6, which is expected I guess since nothing else changed.
Nevcairiel said this:
That file is flagged as full-range content in its headers, which means madVR won't perform range expansion.
You can temporarily fix it by pressing Ctrl-Alt-Shift-I a number of times to select TV as input range, but its really just a badly encoded file.
Which I have no reason to doubt. So in this case either EVR somehow figures out that it is 16-235 file or treats all as if they were.
This reminds me of my other problem, that turned out to be potplayers video processing filter hacking image quality. So I disabled it and now I don't have brightness/contrast/saturation settings (also effects like mirror/rotate), but they still would be useful, because some files still don't reach black (or 16 I guess with cropped range). So basically modifying brightness is what I miss most from madVR at the moment. I suppose effects could be added by anyone when you add pixel shader script support. (Maybe its impossible for the player to modify brightness without butchering upscaling, but anyway it always does so. )
The recent anti-ringing builds make me wonder: is NNEDI3 resizing considered? You seemed to like it in the non-ringing Lanczos thread. (Me too.)
nevcairiel
18th September 2012, 21:09
The recent anti-ringing builds make me wonder: is NNEDI3 resizing considered? You seemed to like it in the non-ringing Lanczos thread. (Me too.)
Implementations so far are way too slow for realtime usage. Its sad.
mzso
18th September 2012, 21:31
Implementations so far are way too slow for realtime usage. Its sad.
Oh. I didn't think of that. (for some reason)
Well, maybe in the not to near future then. :)
Fullmetal Encoder
18th September 2012, 21:47
Implementations so far are way too slow for realtime usage. Its sad.
If memory serves, I was once able to get QTGMC using NNEDI3 running DVD material on my Core i7 860 system at almost 30 fps with madVR.
What we need is to abstract the algorithms to run in GPU hardware with CUDA :sly:
madshi
18th September 2012, 22:18
Which I have no reason to doubt. So in this case either EVR somehow figures out that it is 16-235 file or treats all as if they were.
EVR treats all as if they were 16-235. You can tell madVR to behave identical: Just press Ctrl+Alt+Shift+i to switch input levels to TV, then press F2 to save your changes. From then on madVR will also treat all videos as 16-235.
This reminds me of my other problem, that turned out to be potplayers video processing filter hacking image quality. So I disabled it and now I don't have brightness/contrast/saturation settings (also effects like mirror/rotate), but they still would be useful, because some files still don't reach black (or 16 I guess with cropped range). So basically modifying brightness is what I miss most from madVR at the moment. I suppose effects could be added by anyone when you add pixel shader script support. (Maybe its impossible for the player to modify brightness without butchering upscaling, but anyway it always does so. )
Stuff like brightness/contrast controls etc are on my to do list. And yes, pixel shader script support, too.
The recent anti-ringing builds make me wonder: is NNEDI3 resizing considered? You seemed to like it in the non-ringing Lanczos thread. (Me too.)
I'm not sure if it is well suited to the way GPUs work (every pixel should ideally run through the same code). I might look into this in the future, but probably not soon.
dansrfe
18th September 2012, 23:26
1) How do we determine the gamma/transfer function input and desired output?
2) If we have calibrated our display with the Windows calibration tool (at the moment, and yes madVR does respect the calibrated values. I tested this.) Should we enable "This display is already calibrated and if so which gamma transfer function should we choose (essentially question 1)? After testing and looking at monitor specs I have determined that the gamma level is 2.2 (I didn't touch that while calibrating via the Windows calibration tool).
I've heard some people say that the output gamma should be set to 2.4 for movie content? This tends to darken the gamma bit from 2.2 and seems to either improve or over-darken the picture. Not sure what to conclude on that. Any tips?
Thanks!
Keiyakusha
19th September 2012, 00:29
at the moment, and yes madVR does respect the calibrated values. I tested this.
I think the test is simple we just knowingly select wrong things (create visually wrong profile) and check if madvr affected, something like that?
As I understand, you say madvr obeys windows' colors. It is both in windowed and exclusive mode?
EDIT: windows calibration aims for 2.2 gamma (or so I've read somewhere...) so this is probably what you should select, but I'm also interested what about primaries or curve?
Edit2: by the way I found microsoft's images used for calibration to be low quality and inacurate... there is similar tests that give me quite better results
for example this image is better than their circles which makes my eyes bleed http://i.imgur.com/EB4hT.gif
when you go far enough from display so you no longer can distinguish black and white lines - square should be exactly the same color as area around it.
dansrfe
19th September 2012, 01:30
I think the test is simple we just knowingly select wrong things (create visually wrong profile) and check if madvr affected, something like that?
As I understand, you say madvr obeys windows' colors. It is both in windowed and exclusive mode?
EDIT: windows calibration aims for 2.2 gamma (or so I've read somewhere...) so this is probably what you should select, but I'm also interested what about primaries or curve?
Edit2: by the way I found microsoft's images used for calibration to be low quality and inacurate... there is similar tests that give me quite better results
for example this image is better than their circles which makes my eyes bleed http://i.imgur.com/EB4hT.gif
when you go far enough from display so you no longer can distinguish black and white lines - square should be exactly the same color as area around it.
I tested if calibration works in exclusive and windowed mode by creating and setting a profile with grossly incorrect values. So that's how I know.
Well, I looked at that square on both my monitor, one of them is an LG WLED 1080p laptop panel and the other is a Dell SP2309W (also probably an LG panel) which is dual CCFL backlight at 2048 x 1152.
I tend not to pay attention to the pictures they have since they are pretty crappy. I just used a few images and the desktop's color (toolbars, icons, etc.). The square looks like it has black lines while the area around it is gray on my SP2309W (which has dedicated RGB controls in the OSD and since it is Wide Gamut I just applied the Wide Gamut RGB profile and didn't touch the software calibration values on it). On my laptop the square's lines look dark yellow and the area around it looks grey. Not sure what's going on around there. For my laptop screen I decreased the blue and green a bit since I think the default calibrated values are for a high color temp (very bluish white).
I'm not really sure how to fix the yellow lines in the square on my laptop screen since when I try to adjust the RGB controls it changes the grey around it as well and basically anything different from the current values only deviates it from the best I can get it to look based on the RGB values set in the previous calibration.
I think I may just invest in a Spyder and calibrate it properly.
Does anyone have any recommendations on calibration devices and what the process is to create a single 3DLUT file which can be pointed to in madVR's calibration setup? The cost of the device is not an issue since I'll probably be using it on multiple monitors and I'll think of it as an investment.
Keiyakusha
19th September 2012, 01:40
To be honest I don't know about yellow lines... on my dell monitor with icc profile made by dell, square have the same color as area around, which indicates perfect 2.2 gamma.
you can't use this image to configure color though, this is for checking gamma only. maybe your display just old or not at its native resolution or something. but anyway it doesn't looks like something that can be fixed by adjusting r,g or b plane...
Boltron
19th September 2012, 01:47
Does anyone have any recommendations on calibration devices and what the process is to create a single 3DLUT file which can be pointed to in madVR's calibration setup? The cost of the device is not an issue since I'll probably be using it on multiple monitors and I'll think of it as an investment.
I purchased the X-Rite’s EyeOne Display 3 colorimeter (officially called the i1 Display Pro) and ChromaPure software from http://www.curtpalme.com/ChromaPure_EyeOneDisplay3.shtm
I am very happy with it. It's not a fully pro meter but is very good and very fast to take readings.
dansrfe
19th September 2012, 01:52
To be honest I don't know about yellow lines... on my dell monitor with icc profile made by dell, square have the same color as area around, which indicates perfect 2.2 gamma.
you can't use this image to configure color though, this is for checking gamma only. maybe your display just old or not at its native resolution or something. but anyway it doesn't looks like something that can be fixed by adjusting r,g or b plane...
I don't know what's going on with my laptop panel. It looks completely fine but when the square picture or even the windows gamma picture with the dots comes on the screen it shows it as being yellow.
This is pretty good too: http://www.lagom.nl/lcd-test/gamma_calibration.php
dansrfe
19th September 2012, 01:57
I purchased the X-Rite’s EyeOne Display 3 colorimeter (officially called the i1 Display Pro) and ChromaPure software from http://www.curtpalme.com/ChromaPure_EyeOneDisplay3.shtm
I am very happy with it. It's not a fully pro meter but is very good and very fast to take readings.
Awesome, I'll look into it and possibly buy it today if it's on Amazon.
Is the ChromaPure software any good? I've heard people talk about Argyll CMS and how great it is. I personally don't know that much in-depth information about calibration so I can't really make any judgements on it.
leeperry
19th September 2012, 06:44
Does anyone have any recommendations on calibration devices
http://www.amazon.com/Pantone-MEU116-ColorMunki-Create-Software/dp/B001E2J464
I got mine for $50 shipped from newegg so the price might lower if you wait a bit, it's an "eye one display 2" with a crippled firmware....but Argyll unlocks it completely, and it also works in Color HCFR 3.x(which is using the Argyll drivers).
Creating 3DLUT's is quite a headache, but at least you'll have a very worthy sensor for little money ;)
Xello
19th September 2012, 16:01
I bought the same colorimeter a while back, been using it with HCFR and I must say fantastic buy it's doing the job of a much more expensive meter and very quickly.
Peekstra
19th September 2012, 16:29
Only after buying my Eyeone sensor I learned that these devices need to be re-calibrated yearly to stay accurate :(
Thus making it a less attractive investment then I previously thought it would be.
omarank
19th September 2012, 16:37
The crash report didn't help too much, unfortunately. I don't think LAV supports displaying images/pictures? Please check which filters are used on your PC if you try to display pictures. If you can't find out due to the crash, try a different video renderer.
When I try to display pictures, I can see only "Color Space Converter" as the additional filter other than the video renderer. I have checked this using VMR9, Overlay and EVR renderers too.
dansrfe
19th September 2012, 17:49
madshi,
Is it possible for you to add a checkbox option to automatically disable the wallpaper changer or basically set it to stop changing the wallpaper while madVR is running and then turn it back on when madVR exits. Kind of the like the refresh rate changer. I have two systems in which my wallpapers change every 10 mins and no matter how much power the system has (CPU/GPU/VRAM) it still makes madVR drop frames when the wallpaper changes.
I would really appreciate this. :) Thanks!
n3w813
19th September 2012, 20:46
See the color tracking of my TV below. Is there anyway I can use tools(?) or manually build a 3DLUT to be used in MadVR to fix the non-linear saturation points of the primaries and secondaries?
http://www.avsforum.com/content/type/61/id/67453/
Asmodian
20th September 2012, 01:41
As of now I know of no way to do that. I would love that ability too if anyone knows how.
It is funny messing around with the color settings on my TV; I can move the 100% secondaries but not <100% so I can get very curved saturations or less curved but never a correct 50% value (like your cyan). It ends up looking better if I leave the TV's settings alone and use MadVR to do any corrections as the <100% values are closer to what MadVR expects based on the primaries.
This is after I figured out a full calibration, I do get pretty good (<4dE) for everything but blue (17dE at 80%). It would be great to be able to use more or all of this information in MadVR but I imagine that would be a pretty big project.
http://i1222.photobucket.com/albums/dd496/asmodian3/LGPK750_zps8f0b26f3.png
mark0077
20th September 2012, 23:37
Hi, I'm using an nVidia card, with these newer drivers that are helping with presentation glitches. Just fyi I have tried disabling the "use a seperate device for presentation", and I get a few frame drops with it from time to time. With it on I get 0 frame drops. Thought I better give that piece of feedback in case options like this might be permanently hidden.
I'm not sure if the intention would be to have this disabled permanently in an ideal world?
GTX295
Windows 7 64bit
mpc-hc
JarrettH
21st September 2012, 00:24
Do I need to share a sample if I find a movie that isn't deinterlacing properly?
It's this: http://www.amazon.ca/gp/product/B0088CHY1U/ref=oh_details_o00_s00_i00
bjd
21st September 2012, 10:19
Hi, I'm using an nVidia card, with these newer drivers that are helping with presentation glitches. Just fyi I have tried disabling the "use a seperate device for presentation", and I get a few frame drops with it from time to time. With it on I get 0 frame drops. Thought I better give that piece of feedback in case options like this might be permanently hidden.
XP Users will notice the same thing - had to roll back
Xaurus
21st September 2012, 17:41
Guys, I am considering getting a Geforce 650 to replace my 450. Zotac (among others) have versions with 2 GB RAM. Is this beneficial for madvr?
Mr Alpha
21st September 2012, 20:37
Guys, I am considering getting a Geforce 650 to replace my 450. Zotac (among others) have versions with 2 GB RAM. Is this beneficial for madvr?In my limited experience madVR uses around 250-300MB of GPU memory.
oddball
22nd September 2012, 13:29
Is there a way to show the playback time without exiting fullscreen exclusive mode? If I do it using MPC it exits exclusive mode and drops frames and glitches. I am trying to diagnose an issue and need to see the playback time and not cause hiccups in my ctrl-j stats.
the_weirdo
22nd September 2012, 13:46
You can try Ctrl+I. It works for me.
oddball
23rd September 2012, 03:34
Thx. I'm having issues with the occasional frame drop which is annoying since I have the HDTV synced at 23.976Hz with a .00003Hz deviation. I can't figure out why MadVR says 1 frame drop every 30+ minutes. I thought it would be telling me several hours if not days when the Hz to FPS is so spot on. I am using LAV filters BTW.
EDIT: Oh and I have another issue. If I play a video with Directx11 enabled and use a separate thread ticked. If I then click away from the video window the video freezes whilst the audio continues. If I disable use a separate thread it works as expected. I've also noticed this weird back and forth glitch on certain settings (whereby the video seems to be repeating previous frames continuously). This often happens when using ffdshow audio with jitter correction enabled but I have seen it happen with it disabled too (or using LAV audio decoder instead).
GTX560Ti BTW with 306 drivers (did it before with older drivers though).
cyberbeing
23rd September 2012, 09:57
I can't figure out why MadVR says 1 frame drop every 30+ minutes.
What does madVR report as your 'Display Hz' & 'Clock Deviation %' after you let it stabilize?
AndreaMG
23rd September 2012, 11:43
Hi madshi,
pixel shaders will be integrated the way EVR custom does? Will we be able to choose between pre and post-resize shaders and utilize directly the scripts from EVR custom? It will be fantastic to finally be able to use a post-resize sharpener in madVR without recurring to the TV set sharpening (which is usually crap) or NVIDIA enhancements.
I’ve seen you mentioned Dideé's "fine sharp", which to my eyes is the best around (better than Seesaw and LFSMod), do you think it will be possible to integrate it into madVR via pixel-shaders (GPU) so that we can sharpen AFTER resize with madVR?
It will be also cool to integrate into the interface the most common pixel shaders and to be able to tweak the basic parameters directly from madVR interface (like ffdshow does!).
Thanks :)
oddball
23rd September 2012, 12:35
What does madVR report as your 'Display Hz' & 'Clock Deviation %' after you let it stabilize?
With use D3D11 for presentation ticked
After 8 minutes playback
display 23.97603Hz
Composition rate 59.940Hz
clock deviation 0.00179%
1 frame drop every 37 minutes but never seems to get past a certain amount (like never in hours).
use seperate thread is disabled. I always get 1 presentation glitch from start. I sometimes get an error message box popup on MPC exit but it vanishes from the screen too fast for me to see what it is. Does not happen if D3D11 is unticked.
Again after 8 minutes playback.
With D3D11 unticked and use seperate thread ticked.
display 23.97603Hz
clock deviation 0.00195%
1 frame drop every 34 minutes. Again it never seems to go any higher.
ctrl-j says 0 dropped frames , delayed frames and glitches but need to wait for the movie to get past around the 2 hour mark to know (I am using a 3 hour 1080p movie as a test) if it actually does.
With D3D11 unticked and use seperate thread unticked I get a slightly lower clock deviation and it gets there bit quicker.
If I use ReClock in the chain (allowing the not recommended bitstream processing) deviation goes down to single digits. With D3D11 enabled it says 1 dropped frame every so many days. With D3D11 unticked, several hours. However I don't know about dropped audio frames. It says in ReClock 1 repeat audio frame initially. I would need to play something for a couple of hours to see if I get any dropped/repeated audio (and video) frames using that.
BTW if I tick A/V Sync in LAV audio decoder I always get dropped frames at the beginning of playback. I usually have it unticked.
I'm thinking I might just use ReClock as I can suffer the occasional dropped audio frame. I tend not to notice those unless there are lots of them and music is playing. Video frame drops however I nearly always notice.
Oh and I use CUVID for decoding. I am going to try MadVR's software decoding to see if I get any different results.
EDIT: Just a quick test of using MadVR's video decoding does not seem to make any difference.
I am thinking ReClock does a better job of correcting any fluctuations in a/v sync or jitter? I don't have any vsync on in ReClock so don't know what it's actually doing to get the better playback figures (WASAPI perhaps?)
EDIT: One other thing. I use SPDIF output from my motherboards onboard sound (SoundMax) as my receiver is old and does not support HDMI audio. I am thinking the audio clock is not so good on the onboard soundcard which may be why ReClock has to compensate?
cyberbeing
23rd September 2012, 13:03
display 23.97603Hz
clock deviation 0.00179%
Optimal Refresh Rate: 23.97645Hz
display 23.97603Hz
clock deviation 0.00195%
Optimal Refresh Rate: 23.97649Hz
The reason madVR never reports greater than ~35-40 minutes for you is because your refresh rate is 0.00042Hz to 0.00046Hz too low. If you are able to get closer to the optimal refresh rate values for your PC, you should be able to avoid dropped frames without using ReClock.
oddball
23rd September 2012, 13:35
Optimal Refresh Rate: 23.97645Hz
Optimal Refresh Rate: 23.97649Hz
The reason madVR never reports greater than ~35-40 minutes for you is because your refresh rate is 0.00042Hz to 0.00046Hz too low. If you are able to get closer to the optimal refresh rate values for your PC, you should be able to avoid dropped frames without using ReClock.
I see. Hmm. That is awkward. I have to set a custom timing of 1125 total vertical pixels. If I set it to 1124 as outlined in several guides I get a line at the bottom of the display. If I just change the framerate to 23.976 (and don't touch any of the other timings) like that it is out of range of the display. I have to adjust the total horizontal pixels to either 2749 or 2752 but then I don't get the Hz you are saying is optimal. Closest I get is 23.97629Hz using 2752 or 23.97663Hz using 2749.
I can't seem to get to the magical 23.97645-49 mark you suggest is the optimal refresh rate.
1124 total vertical pixels and 23.978 as outlined in a few places I have Googled is a no go. Nvidia 306 drivers just as a reminder ;)
EDIT: I give up. I am going to contiue using ReClock with the refresh set at 23.97603Hz as it gives a calculation of 1 frame drop in the days (vs 1 frame drop within 2 hours if I set to 23.97663Hz - the closest I can get to the 45-49 mark - and no ReClock in the chain). I am thinking it's either an issue with Nvidia or my HDTV's EDID or it just not supporting that refresh rate (hardware or firmware issue perhaps).
Xaurus
23rd September 2012, 14:38
Where does this 23.97650 "optimal refresh rate" come from?
I have it as close to 23.97600 as possible and I have no problems...
nevcairiel
23rd September 2012, 14:55
In the perfect world, its 23.9760239760...... (24000/1001).
However, clocks are not accurate, so there is clock deviation coming in. You need to calculate this clock deviation into the refresh rate if you want a "truely" perfect result, its different for every hardware, basically.
The clock deviation is also the knob ReClock uses to adjust playback for a slightly off refresh rate.
madshi
23rd September 2012, 15:50
1) How do we determine the gamma/transfer function input and desired output?
2) If we have calibrated our display with the Windows calibration tool (at the moment, and yes madVR does respect the calibrated values. I tested this.) Should we enable "This display is already calibrated and if so which gamma transfer function should we choose (essentially question 1)? After testing and looking at monitor specs I have determined that the gamma level is 2.2 (I didn't touch that while calibrating via the Windows calibration tool).
I've heard some people say that the output gamma should be set to 2.4 for movie content? This tends to darken the gamma bit from 2.2 and seems to either improve or over-darken the picture. Not sure what to conclude on that. Any tips?
I'm not really an expert on calibration stuff. If you know how the Windows calibration tool has calibrated your display and if that calibration stays active with madVR running, then set it to "This display is already calibrated" and enter how Windows calibrated your display. If you don't know that, set it to "Disable calibration controls". Or if you have a meter, you can use yCMS for calibration. Gamma 2.4 is for batcaves, meaning you should have black ceiling and walls and total light control. If you have ambient light in the room, Gamma 2.4 will probably be too dark, and the ambient light will eat the shadow detail.
When I try to display pictures, I can see only "Color Space Converter" as the additional filter other than the video renderer. I have checked this using VMR9, Overlay and EVR renderers too.
Ok, but what is the source filter? In MPC-HC right click on the video, click on "Filters", then click on the source filter. That's usually the one which shows the source file name. Then copy the text from the "Pin Info" tab and post it here.
Is it possible for you to add a checkbox option to automatically disable the wallpaper changer
Is there an API available to control the wallpaper changer? I'm not aware of such an API. If there is none, there's no way for madVR to disable it.
See the color tracking of my TV below. Is there anyway I can use tools(?) or manually build a 3DLUT to be used in MadVR to fix the non-linear saturation points of the primaries and secondaries?
Not for now. This is one of the things which yCMS 2.x is supposed to fix. I've been in contact with the yCMS developer and he might start working on yCMS soon.
I have tried disabling the "use a seperate device for presentation", and I get a few frame drops with it from time to time. With it on I get 0 frame drops. Thought I better give that piece of feedback in case options like this might be permanently hidden.
This option will stay, and it will stay enabled by default.
Do I need to share a sample if I find a movie that isn't deinterlacing properly?
If you're interested in having the problem looked at (and fixed, if it's a bug in madVR) then yes, please.
Is there a way to show the playback time without exiting fullscreen exclusive mode?
Yes, by updating to the latest madVR v0.83.
If I play a video with Directx11 enabled and use a separate thread ticked.
Both these options will be gone in v0.83 because they're not needed, anymore, thanks to the latest NVidia driver.
pixel shaders will be integrated the way EVR custom does? Will we be able to choose between pre and post-resize shaders and utilize directly the scripts from EVR custom? It will be fantastic to finally be able to use a post-resize sharpener in madVR without recurring to the TV set sharpening (which is usually crap) or NVIDIA enhancements.
I’ve seen you mentioned Dideé's "fine sharp", which to my eyes is the best around (better than Seesaw and LFSMod), do you think it will be possible to integrate it into madVR via pixel-shaders (GPU) so that we can sharpen AFTER resize with madVR?
It will be also cool to integrate into the interface the most common pixel shaders and to be able to tweak the basic parameters directly from madVR interface (like ffdshow does!).
I do plan to add support for custom pixel shaders, and there will be different shaders for before and after scaling. I can't say much more right now, though, because I haven't even started working on that yet.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.