View Full Version : madVR - high quality video renderer (GPU assisted)
Asmodian
22nd November 2012, 03:56
Contrast is, by definition, dynamic range expressed as a ratio instead of a range (white/black instead of white-black), isn't it?
With Plasma/LCDs I like and expect brightness = black level, contrast = white level. This is also the way my plasma TV works (LG PK750) for what that is worth.
Of course, changing 100% white changes 50% white and changing 0% white changes 50% white. Only changing brightness should not change 100% white and only changing contrast should not change 0% white.
I think it is easier to think about contrast as changing 100% white instead of changing gain but in reality it is the same thing. Doing all this in linear light makes it so much easier to think about compared to in gamma corrected light. You can scale with a simple multiply.
More amazing work madshi! Thanks a lot!
Gary.M
22nd November 2012, 06:20
Of course, changing 100% white changes 50% white and changing 0% white changes 50% white. Only changing brightness should not change 100% white and only changing contrast should not change 0% white.
But it's a grey scale isn't it, with 50% white actually a shade of grey and 0% white = black.
Sent using Tapatalk
Asmodian
22nd November 2012, 07:27
50% grey = 50% black = 50% white. :)
but you get what I meant. ;)
Gary.M
22nd November 2012, 08:00
I've attached a picture, I think this captures what is going on better than words...
https://www.dropbox.com/s/zb6rk0myrv50kib/brightness%26contrast.jpg
Gary.M
22nd November 2012, 08:02
Try again...
https://www.dropbox.com/s/zb6rk0myrv50kib/brightness%26contrast.jpg
Budtz
22nd November 2012, 08:14
With the new version is it possible to finally implemant a sharpening filter in Madvr?
ryrynz
22nd November 2012, 08:43
If you use Madshi's linked build of MPC-HC, yes.
madshi
22nd November 2012, 09:10
I'm not sure where these controls are supposed to be? If I'm supposed to be using the Nvidia control panel, they appear to be working correctly for DXVA2 Native.
Please don't use the NVidia control panel for this. Doing that will introduce NVidia's bad algorithms when using DXVA2, instead of activating madVR's color control algorithms. MPC-HC does not have a color control dialog, but you can assign keys to increase/decrease brightness, contrast and saturation (but not hue), and to reset the color controls to standard values. When you do that, you're activating madVR's color control algorithms...
Yes, I was using Photoshop, so it is probably still calculated in gamma corrected light. If your shader script is adjusting RGB values in such a way, it's a Chroma control, rather than a pure "saturation" control. (but operating in linear light instead of gamma corrected) Most "saturation" or "colour" controls are labelled incorrectly though. Without a full HSL colour system, a "chroma" control would be the right thing to use. (so your implementation is fine) Sorry for any confusion.
I still don't understand the difference between "chroma" and "saturation" control. Whose definition are you refering to? You're talking about a "full HSL color system" as if that would be the best solution, while in reality HSL is total crap. So if your definition of chroma vs saturation control is based on HSL then please throw your definition out of the window and forget about it as fast as possible. If your definition of "saturation" vs. "chroma" is based on something other than HSL, then please let me know where I can read about the difference between "saturation" and "chroma" control.
So I should avoid DXVA2 Native, and stick with DXVA2 Copy-Back, or does copy-back still have this problem [...]?
What about CUVID?
I already answered that before:
"It has always been this way when madVR comes in *direct* contact with any DXVA2 output. DXVA2cb/CUVID don't count as direct contact"
Is this something you are going to be able to get around, or is it up to Nvidia to fix? (and is it a hardware issue that would require new cards?)
I already answered this before, too.
DXVA2 native with LAV Video doesn't work on some files for me. I used the LAVFilters-0.53.2-8-g7fd402c release, but mpc-hc hangs with a black screen and I have kill it via the taskmanager.
Weird. It seems to be stuck while flushing the GPU or something. Can I have a sample with which the problem can be reproduced?
- DXVA2 scaling seems to use something like nearest neighbor.
Too bad, it seems to happen with both Intel and AMD, but not with NVidia. Not sure why.
- some frames are shown out of order when seeking. (DXVA2 decoding + scaling)
Can you please try to find out which feature is responsible for this problem? Is it DXVA2 decoding? Or DXVA2 scaling? Or do both have to be activated for this problem to occur?
- when seeking "scaling failed" warning may appear, but playback seems to immediately continue fine
Can I have a log from this situation, please?
@madshi, 0.85 cant work with ffdshow dxva video decoder(build 4493), it gave me a blackscreen.
Interesting, I'll give that a try.
Also the save image function doesn't work as intended when using DXVA2. When using Jinc, the image is saved in its native resolution but when using DXVA2, it's upscaled.
Oh yes, that's true. That's the way it will be for now. Will fix that some time in the future, but probably not soon.
DXVA2 scaling doesn't work for me... I set my image upscaling and downscaling to DXVA2, the on-screen display says
- scaling failed
Can I have a log from this?
Try again...
https://www.dropbox.com/s/zb6rk0myrv50kib/brightness%26contrast.jpg
Ok, I see what you mean.
But let's get back to the roots: Do we really want to replicate what old CRTs did? Does it not make more sense to design the controls today in such a way that they serve their purpose better?
With the new version is it possible to finally implemant a sharpening filter in Madvr?
Basically yes. You can use the already existing sharpening scripts in MPC-HC's list of custom shaders. They are not of comparable image quality to good AviSynth sharpening, though. That said, it should be possible to create a custom shader script which does something similar to AviSynth sharpening. It might run quite slowly, though (or require a very fast GPU).
sneaker_ger
22nd November 2012, 09:22
Can you please try to find out which feature is responsible for this problem? Is it DXVA2 decoding? Or DXVA2 scaling? Or do both have to be activated for this problem to occur?
Can I have a log from this situation, please?
Likely not before before Sunday or Monday. Hopefully someone else will have already have provided the necessary info by then.
ryrynz
22nd November 2012, 09:51
Madshi, have you considered adding presets for upscaling and downscaling? I was thinking you could have the default settings listed say for a quick revert and also your High Quality preferences listed too with the ability to have the user create up to say 10 presets or so?
psychobo
22nd November 2012, 09:58
Any chance of a portrait fix soon ? I got an eyefinity setup with 3x1 screens in portrait mode and even though the combined resolution is landscape-ish (3900x1920) it seems to be reported as portrait and MadVR won't work with it. Works fine with MPC-HC's EVR though. It is admittedly a weird setup.
madshi
22nd November 2012, 10:14
Madshi, have you considered adding presets for upscaling and downscaling? I was thinking you could have the default settings listed say for a quick revert and also your High Quality preferences listed too with the ability to have the user create up to say 10 presets or so?
This is all so much a matter of taste that it's hard for me to choose specific presets. Anyway, doing presets etc falls into the "fine-tuning" category and this is not really the time for that.
Any chance of a portrait fix soon ? I got an eyefinity setup with 3x1 screens in portrait mode and even though the combined resolution is landscape-ish (3900x1920) it seems to be reported as portrait and MadVR won't work with it. Works fine with MPC-HC's EVR though. It is admittedly a weird setup.
I spent some time a few weeks ago to try to get portrait mode to work, but I failed. According to all the information I found, it should work automagically. Direct3D is supposed to do all the heavy lifting for me, without me even having to ask about it. But for some reason it doesn't work, and I don't know why. I've found no information about this with a google search, so I don't really have a clue how to fix this at the moment. I'm sure I'll find a way to fix it eventually, but it's going to be difficult and time consuming to even find out what's going on, so unfortunately because of that it's not a high priority on my to do list at the moment...
toniash
22nd November 2012, 10:26
Thanks, I will try it out. Maybe there's a deband shader somewhere, can't find it in the official list though.
here -> http://forum.doom9.org/showthread.php?p=1498593#post1498593
leeperry
22nd November 2012, 10:29
Alright, the next build of PotP will support PS scripts with mVR :)
And FWIWT, it's currently possible to assign a specific script to its based rules automatic profiles....awaiting more infos atm because the broken english translation of PotP isn't too helpful.
ryrynz
22nd November 2012, 10:32
This is all so much a matter of taste that it's hard for me to choose specific presets. Anyway, doing presets etc falls into the "fine-tuning" category and this is not really the time for that.
Yeah I know but how many times have you seen users ask "What are the best settings?" Often they won't bother to test these options themselves, anyway and I think your preference for HQ settings would be fine as a HQ preset and nobody is really going to dispute that. Certainly it's something that fits into fine-tuning, just wanted to run it by you.
toniash
22nd November 2012, 10:34
alright, the next build of potp will support ps scripts with mvr :)
;):d:)
Prinz
22nd November 2012, 10:43
Weird. It seems to be stuck while flushing the GPU or something. Can I have a sample with which the problem can be reproduced?
12 seconds sample (https://www.dropbox.com/s/cah65mw1kfypgwq/B.zip)
huhn
22nd November 2012, 10:55
i got the scailing fail error with dxva2 from resizing the player windows
http://s3.imgimg.de/uploads/syncda33de6bpng.png
but everything is "fine"
the log ist 183 mb big after ~5 sec...
the error is right at the end but i have to resize the player alot in that 5 sec to produce the error
at least i don't get the error with seeking
http://www.file-upload.net/download-6841757/madVR---log.7z.html
kasper93
22nd November 2012, 11:02
MPC-HC does not have a color control dialog, but you can assign keys to increase/decrease brightness, contrast and saturation (but not hue), and to reset the color controls to standard values.
Are you sure? :devil: http://i.imgbox.com/ach7eJyU.png
We could add a note that it works with madVR too. FWIW. I have few ideas for cosmetic changes in mpc-hc, but I'm far from home and right now I can't make any patches ;p
TheLion
22nd November 2012, 12:24
Here is a madVR debug report with MC18 regarding the "washed out" picture problem.
After playback starts I opened the MC color controls and changed brightness and contrast and then reset to defaults again. As mentioned using this color controls turns the picture black/white. With default settings the picture is "washed out" No setting in MC, madVR or Catalyst driver fixes this.
The issue has been confirmed by other MC users.
Thanks!
ajp2k11
22nd November 2012, 12:32
I installed Win8 on my laptop a few days ago and since then I'm having trouble with MadVR in MPC-HC. Never hade any problems on Win7.
Playback starts but the screen is black and I hear audio. Sometimes the picture appears after I while or if I maximize/minimize the player a few times, maybe it's just a coincident. Some files are harder to get to play than others. MPC-HC with just EVR/CP and LAV filters on their own work fine...
My laptop has a Radeon HD6650M with Catalyst 12.10...
Suggestions?
romulous
22nd November 2012, 12:35
Hi madshi,
This was something Blight asked me to post here a little while ago - he thinks it is a bug in madVR rather than Zoom Player. There were two slightly different ways to reproduce this - so I'm not sure if they are quite the same issue or not, so I've copied them both below.
#1:
a) make sure you are using madVR with FSE option enabled
B) start a video in fullscreen mode (madVR will be in exclusive mode)
c) right click anywhere on screen (this will force madVR in windowed mode)
d) left click anywhere on the video window but on the menu from now on you can do other stuff like showing different navigators and interact with them (even close them with a right click) and the popup menu will still be visible until you right click on a different place on the video window.
Just checked with v0.85.0, and this one is still an issue.
#2:
1. Ensure the 'Enable Automatic Fullscreen Exclusive Mode' option in madVR is enabled.
2. Open Zoom, open a video.
3. Fullscreen Zoom. Wait until madVR displays the 'exclusive' on the OSD, to indicate it is in exclusive mode.
4. Right click the Zoom window.
5. When the context menu displays, madVR is kicked out of exclusive mode.
6. Immediately exit out of fullscreen, back to windowed mode in Zoom.
7. The context menu is still displaying, and won't disappear until you close Zoom, even if you right click again.
Blight's comment for #2 was "MadVR is doing something weird, it's taking focus from the menu, but the context menu never receives a windows message saying it lost focus."
Blight
22nd November 2012, 12:50
Hi everyone, here's a new ZP MAX v8.6 test build that adds support for MadVR's 0.85 color control feature:
https://dl.dropbox.com/u/104094858/zplayer_860b2.rar
Madshi:
The only thing missing to make MadVR perfect right now is image rotation for people who take videos on the side using their cell-phones.
Xaurus
22nd November 2012, 12:51
The latest mpc-hc build (1.6.5.6240) now supports pixel shaders with madvr.
http://xhmikosr.1f0.de/mpc-hc/
From changelog.txt:
+ Ticket #2739, Support custom pixel shaders with madVR v0.85.0
cyberbeing
22nd November 2012, 13:39
I personally believe that Adobe Photoshop's Brightness & Contrast methods are optimal for image quality.
http://img42.imageshack.us/img42/8089/stepchart.th.png (http://img42.imageshack.us/img42/8089/stepchart.png)
Stepchart
http://img829.imageshack.us/img829/2141/stepchartpsbrightness50.th.png (http://img829.imageshack.us/img829/2141/stepchartpsbrightness50.png)
Stepchart - Photoshop Brightness 50
http://img4.imageshack.us/img4/5390/stepchartpsbrightness10.th.png (http://img4.imageshack.us/img4/5390/stepchartpsbrightness10.png)
Stepchart - Photoshop Brightness 100
http://img507.imageshack.us/img507/3783/stepchartpscontrast50.th.png (http://img507.imageshack.us/img507/3783/stepchartpscontrast50.png)
Stepchart - Photoshop Contrast 50
http://img687.imageshack.us/img687/8435/stepchartpscontrast100.th.png (http://img687.imageshack.us/img687/8435/stepchartpscontrast100.png)
Stepchart - Photoshop Contrast 100
Traditional brightness and contrast controls only belong on TV and Monitor displays IMHO, since only there can black level and peak luminance be set.
If someone desires an ability to clip/expand a video's levels significantly, options for that should probably be placed elsewhere in madVR if needed.
Though since I really don't see myself using this functionality, I'm okay with whatever madshi ultimately decides on.
crotecun
22nd November 2012, 14:25
Can I have a log from this?
Here's a log.
madVR - log 2012-11-22 mpc-hc (http://bayfiles.com/file/t6qn/wVsgbi/madVR_-_log_2012-11-22_mpc-hc.rar)
Thanks for looking into it! :)
Boltron
22nd November 2012, 14:58
Here is a madVR debug report with MC18 regarding the "washed out" picture problem.
Thanks!
I can confirm this also with MC18. Reverted to previous madVR version (0.84.7) and all is well.
Blight
22nd November 2012, 15:12
Small glitch:
When using the frame-capture (screenshot) feature, it seems a back-buffer is displayed with junk on screen for a split second.
The captured image is fine, this is only cosmetic.
madshi
22nd November 2012, 15:48
Are you sure? :devil: http://i.imgbox.com/ach7eJyU.png
We could add a note that it works with madVR too. FWIW. I have few ideas for cosmetic changes in mpc-hc, but I'm far from home and right now I can't make any patches ;p
Ooooh, I looked in the menu for an extra color control dialog. Never thought of looking in the main options dialog... :D
I installed Win8 on my laptop a few days ago and since then I'm having trouble with MadVR in MPC-HC. Never hade any problems on Win7.
Playback starts but the screen is black and I hear audio. Sometimes the picture appears after I while or if I maximize/minimize the player a few times, maybe it's just a coincident. Some files are harder to get to play than others. MPC-HC with just EVR/CP and LAV filters on their own work fine...
My laptop has a Radeon HD6650M with Catalyst 12.10...
Suggestions?
Maybe I can say something if you upload a (zipped) log file.
This was something Blight asked me to post here a little while ago - he thinks it is a bug in madVR rather than Zoom Player. There were two slightly different ways to reproduce this - so I'm not sure if they are quite the same issue or not, so I've copied them both below.
#1:
a) make sure you are using madVR with FSE option enabled
B) start a video in fullscreen mode (madVR will be in exclusive mode)
c) right click anywhere on screen (this will force madVR in windowed mode)
d) left click anywhere on the video window but on the menu from now on you can do other stuff like showing different navigators and interact with them (even close them with a right click) and the popup menu will still be visible until you right click on a different place on the video window.
Just checked with v0.85.0, and this one is still an issue.
#2:
1. Ensure the 'Enable Automatic Fullscreen Exclusive Mode' option in madVR is enabled.
2. Open Zoom, open a video.
3. Fullscreen Zoom. Wait until madVR displays the 'exclusive' on the OSD, to indicate it is in exclusive mode.
4. Right click the Zoom window.
5. When the context menu displays, madVR is kicked out of exclusive mode.
6. Immediately exit out of fullscreen, back to windowed mode in Zoom.
7. The context menu is still displaying, and won't disappear until you close Zoom, even if you right click again.
Blight's comment for #2 was "MadVR is doing something weird, it's taking focus from the menu, but the context menu never receives a windows message saying it lost focus."
I'll put this on my list of things to look it. For now I'm more concerned about fixing all the new bugs with DXVA2 decoding and scaling first.
The only thing missing to make MadVR perfect right now is image rotation for people who take videos on the side using their cell-phones.
My to do list has 3D rendering as the next big priority now. Maybe I can look at rotation afterwards...
I personally believe that Adobe Photoshop's Brightness & Contrast methods are optimal for image quality.
http://img42.imageshack.us/img42/8089/stepchart.th.png (http://img42.imageshack.us/img42/8089/stepchart.png)
Stepchart
http://img829.imageshack.us/img829/2141/stepchartpsbrightness50.th.png (http://img829.imageshack.us/img829/2141/stepchartpsbrightness50.png)
Stepchart - Photoshop Brightness 50
http://img4.imageshack.us/img4/5390/stepchartpsbrightness10.th.png (http://img4.imageshack.us/img4/5390/stepchartpsbrightness10.png)
Stepchart - Photoshop Brightness 100
http://img507.imageshack.us/img507/3783/stepchartpscontrast50.th.png (http://img507.imageshack.us/img507/3783/stepchartpscontrast50.png)
Stepchart - Photoshop Contrast 50
http://img687.imageshack.us/img687/8435/stepchartpscontrast100.th.png (http://img687.imageshack.us/img687/8435/stepchartpscontrast100.png)
Stepchart - Photoshop Contrast 100
Traditional brightness and contrast controls only belong on TV and Monitor displays IMHO, since only there can black level and peak luminance be set.
If someone desires an ability to clip/expand a video's levels significantly, options for that should probably be placed elsewhere in madVR if needed.
Though since I really don't see myself using this functionality, I'm okay with whatever madshi ultimately decides on.
You do have a point. Putting black & white level adjustments controls in the madVR device setup might make more sense because you can set them there per monitor. True brightness & contrast controls which don't change black nor white levels might be better choices for the media player color controls. I guess brightness could simply be changed by changing the gamma curve. For contrast I also have an algorithm which doesn't modify black & white level.
What do the others say?
Small glitch:
When using the frame-capture (screenshot) feature, it seems a back-buffer is displayed with junk on screen for a split second.
The captured image is fine, this is only cosmetic.
Does this happen only under specific circumstances? Maybe only with DXVA2 decoding or DXVA2 scaling or something? I'm wondering because nobody reported this yet, so probably it only occurs when using the new madVR v0.85.0 features? Does it occur every time? Are we talking about taking screenshots while the video is playing? Or while the video is paused?
madshi
22nd November 2012, 15:51
12 seconds sample (https://www.dropbox.com/s/cah65mw1kfypgwq/B.zip)
Can't reproduce any problems here with LAV + madVR with DXVA2 decoding on win7 x64. NVidia 9400.
madshi
22nd November 2012, 16:03
madVR v0.85.1 released
http://madshi.net/madVR.zip
* fixed: corruption on bottom image border with native h264 DXVA2 decoding
* fixed: DXVA2 scaling didn't work correctly
* fixed: color controls resulted in washed out image with J.River MC
* small DXVA2 decoding stability improvement
* limited DXVA2 decoding to not work on Windows XP
* limited DXVA2 decoding to not work when using the old FSE mode
* custom shaders are now compiled with wanted profile instead of always ps_3_0
* added "[DXVA2]" to debug log when DXVA2 decoding is used
Please retest DXVA2 scaling, it should be a lot different now compared to before. No more "scaling failed" and no more point resampling with AMD and Intel. Also probably better scaling quality with NVidia now.
SamuriHL
22nd November 2012, 16:06
You do have a point. Putting black & white level adjustments controls in the madVR device setup might make more sense because you can set them there per monitor. True brightness & contrast controls which don't change black nor white levels might be better choices for the media player color controls. I guess brightness could simply be changed by changing the gamma curve. For contrast I also have an algorithm which doesn't modify black & white level.
What do the others say?
I think that makes a hell of a lot of sense, personally.
rahzel
22nd November 2012, 16:11
Sorry for the noob questions, but I haven't really followed this thread extensively, nor am I the most educated person when it comes to all this scaling/decoding stuff.
-So now that madVR supports DXVA2 native for AMD/ATI users (or all I should say), is there any downside to using it over software decoding? And what about Intel iGPUs? Intel HD4000 for example... are there any disadvantages to using QuickSync vs DXVA2? I tried both and I can definitely see that, as far as processor usage, it goes Software > Quicksync > DXVA2.
-Are the new DXVA2 scaling options for weaker GPUs? Or is there some other benefit in using DXVA2 scaling over madVR's scaling algorithms? Or am I completely off the mark here? What's the main reasoning behind this addition?
Anyway, big thanks to madshi for this big release.
ajp2k11
22nd November 2012, 16:15
Maybe I can say something if you upload a (zipped) log file.
I'll give it another go tonight and if I can't get it working I'll upload a (zipped) logfile. Thanks, much appreciated! :)
Prinz
22nd November 2012, 16:19
Something really strange is going on here. Almost no files play with dxva native and madvr. Even the files that play only play sometimes... :o
With EVR all files work.
dxva cb with madvr also works (as a very slow slideshow of course since it's a ATI 2600 XT)
wanezhiling
22nd November 2012, 16:28
0.85.1 still failed with ffdshow dxva, cyberlink dxva.
Furthermore, coreavc dxva will fall back to sw mode with 0.85.1 but is ok with 0.85.0
ice25
22nd November 2012, 16:29
For some reason Madvr 0.85.0 is outputting PC levels on some files and TV levels on others..?
madshi
22nd November 2012, 16:39
-So now that madVR supports DXVA2 native for AMD/ATI users (or all I should say), is there any downside to using it over software decoding? And what about Intel iGPUs? Intel HD4000 for example... are there any disadvantages to using QuickSync vs DXVA2? I tried both and I can definitely see that, as far as processor usage, it goes Software > Quicksync > DXVA2.
If you notice no problems then the limitations probably won't bother you. The main limitation right now is that subtitle rendering via vsfilter/xy-vsfilter won't work. Oh yes, and with Intel and NVidia there's a very small blurring of the chroma channel. There should be no image quality difference to software decoding with AMD.
-Are the new DXVA2 scaling options for weaker GPUs? Or is there some other benefit in using DXVA2 scaling over madVR's scaling algorithms? Or am I completely off the mark here? What's the main reasoning behind this addition?
The reasoning is that at least Intel is supposed to have a good scaling algorithm with hard wired circuits, so it should have good performance / quality ratio. I don't know yet how good AMD and NVidia scaling algorithms are and what the performance implications are. We'll have to find out. If it all doesn't proof to be a worthy addition I can remove it again. But I think it will be useful, at least from a quality vs performance ratio.
Something really strange is going on here. Almost no files play with dxva native and madvr. Even the files that play only play sometimes... :o
With EVR all files work.
dxva cb with madvr also works (as a very slow slideshow of course since it's a ATI 2600 XT)
Anybody has similar problems when using LAV + madVR?
0.85.1 still failed with ffdshow dxva, cyberlink dxva.
Furthermore, coreavc dxva will fall back to sw mode with 0.85.1 but is ok with 0.85.0
Yeah, still gotta look into ffdshow and cyberlink DXVA2. Funny that CoreAVC now falls back to software decoding. At least that bit should be easy to fix.
For some reason Madvr 0.85.0 is outputting PC levels on some files and TV levels on others..?
Is that a new problem introduced in v0.85.0?
Please double check input and output levels by pressing Ctrl+Alt+Shift+I (input) and Ctrl+Alt+Shift+Y (output).
ice25
22nd November 2012, 16:54
Is that a new problem introduced in v0.85.0?
Please double check input and output levels by pressing Ctrl+Alt+Shift+I (input) and Ctrl+Alt+Shift+Y (output).
Yes, it's a new problem, i never had that issue before 0.85.0. In fact i noticed that the output levels don't switch between TV and PC levels but rather between PC and crushed black levels. For the moment i changed my Panasonic output levels in the madvr config to TV levels to counter this problem, so that i can manually switch between the 2 outputs according to the file.
madshi
22nd November 2012, 17:00
As I said, please double check input and output levels, if you see the problem again. Also please double check that the color controls in your media player are set to neutral values. If you're using MPC-HC, they're in the general options dialog under "Miscellaneous".
rahzel
22nd November 2012, 17:11
Thanks for your answers, madshi.
Haven't tried my AMD rig yet, but on my HD4000 Intel, I'm noticing a small difference in gamma using DXVA2 native (LAV 0.53.1) vs the other decoders.
First screen is DXVA2 native, then the others it doesn't really matter as they're identical, but they're either Quicksync, DXVA2-CB or LAV software decoding.
http://imgbox.com/g/ABn4hB4zBf
madshi
22nd November 2012, 17:23
Have you disabled all funny algorithms in the Intel GPU driver control panel? Using DXVA2 always comes with the danger of introducing stupid GPU algorithms.
robpdotcom
22nd November 2012, 17:27
Not sure if this is a bug or a limitation, but the IVTC filter does not work with DXVA2 decoding. In fact, I cannot even toggle to "film mode" using the keyboard shortcut.
crotecun
22nd November 2012, 17:28
madVR v0.85.1 released
http://madshi.net/madVR.zip
* fixed: corruption on bottom image border with native h264 DXVA2 decoding
* fixed: DXVA2 scaling didn't work correctly
* fixed: color controls resulted in washed out image with J.River MC
* small DXVA2 decoding stability improvement
* limited DXVA2 decoding to not work on Windows XP
* limited DXVA2 decoding to not work when using the old FSE mode
* custom shaders are now compiled with wanted profile instead of always ps_3_0
* added "[DXVA2]" to debug log when DXVA2 decoding is used
Please retest DXVA2 scaling, it should be a lot different now compared to before. No more "scaling failed" and no more point resampling with AMD and Intel. Also probably better scaling quality with NVidia now.
Hooray, scaling in DXVA2 now works as expected :thanks:
And yes, the video settings in the GPU control panel do affect the output.
On my video card I can easily see the difference by turning on demo mode to split screen in AMD Catalyst settings --
http://i.imgur.com/gYzzCl.jpg (http://imgur.com/gYzzC)
http://i.imgur.com/UemMvl.jpg (http://imgur.com/UemMv)
I wonder how much different it would like on an Intel or Nvidia card :D
ajp_anton
22nd November 2012, 17:33
"New" default scalings + LAV/QS: ~17.5W
All bilinear scaling + QS: ~15.0W
DXVA scaling + QS: ~14.0W
DXVA scaling and decoding: ~13.0W
EVR-CP with any scaling: ~12.5W (<-chroma looks horrible)
EVR: ~12.0W
i7-2600k, HD3000, looking at the whole CPU package power. Upscaling from 720p to 1440p.
DXVA scaling looks a little sharper than lanczos3, but haven't made any more detailed comparisons.
ajp2k11
22nd November 2012, 17:46
I installed Win8 on my laptop a few days ago and since then I'm having trouble with MadVR in MPC-HC. Never hade any problems on Win7.
Playback starts but the screen is black and I hear audio. Sometimes the picture appears after I while or if I maximize/minimize the player a few times, maybe it's just a coincident. Some files are harder to get to play than others. MPC-HC with just EVR/CP and LAV filters on their own work fine...
My laptop has a Radeon HD6650M with Catalyst 12.10...
Suggestions?
Madshi,
debug log as requested.
Thanks!
aufkrawall
22nd November 2012, 18:10
The bars are gone, nice & thanks.
But now I have another problem:
madVR fails to correctly enter FSE if there's a display mode change at the same time when DXVA2 downscaling is selected.
It's reproducible to me. Doesn't happen with other downscale methods.
6233638
22nd November 2012, 18:12
MPC-HC does not have a color control dialog, but you can assign keys to increase/decrease brightness, contrast and saturation (but not hue), and to reset the color controls to standard values.Got it. I only tried adjusting the Nvidia settings because that was all I could find which changed the image.
Using the MPC-HC controls, they are not working correctly. Or at least, not how everyone else does it - I do think your usage is more accurate, but it will confuse anyone familiar with how the brightness/contrast controls work on anything else.
+contrast should be −brightness
−contrast should be +brightness
+brightness should be +contrast
−brightness should be −contrast
+saturation should be called +colour or +chroma
−saturation should be called −colour or −chroma
But I guess the "saturation" label isn't something you can change, and that would be up to the MPC-HC devs. (I don't think you should change how "saturation" is working in madVR)
I've also noticed that when using the "DXVA2" scaling option, the controls can be quite unresponsive and cause a large number of dropped frames. (fine with any other scaling option)
Am I correct in thinking that the brightness/contrast controls only affect either the white/black points, and are not stretching the range?
i.e. −contrast under your naming scheme is only raising black from say 16 to 20, and leaves white at 235 rather than also reducing it by a similar amount at the same time. (say to 230)
I actually think that it would be useful to have a control that adjusted both black level and white level by the same amount to fix videos which have been encoded with the wrong levels settings (sometimes a video is recorded at 16-235 but gets encoded at 30–218 for some reason) but that's not what people would expect the brightness/contrast controls to do.
I do wish there was an option to add some custom levels presets or something inside madVR rather than manually adjusting brightness/contrast for each video though. Being able to switch between "PC Levels", "TV Levels", and "Custom 1", "Custom 2" etc. would be very useful. (or at least PC, TV, and 30-218)
I still don't understand the difference between "chroma" and "saturation" control. Whose definition are you refering to? You're talking about a "full HSL color system" as if that would be the best solution, while in reality HSL is total crap. So if your definition of chroma vs saturation control is based on HSL then please throw your definition out of the window and forget about it as fast as possible. If your definition of "saturation" vs. "chroma" is based on something other than HSL, then please let me know where I can read about the difference between "saturation" and "chroma" control.Most colour management systems now use RGBCMY HSL controls to adjust things. It's a far easier way to calibrate the display because you can use dE'94 to split the colour error into its hue/saturation/lightness components and allows you to adjust each aspect individually. HSL controls allow you to dial in a display much quicker than any other method.
RGBCMY HSL controls (or xyY) are exactly what yCMS needs to adjust the LUT if the calculated points are not correct. (although personally I would rather just directly enter RGB output values, similar to when you write a custom LUT for some hardware LUT boxes)
A chroma control adjusts both saturation and lightness of a colour at the same time, and is considerably less useful in calibration. A chroma control is probably what most people would expect from something like this (http://i.imgbox.com/ach7eJyU.png) however, so your "linear saturation" implementation is fine there. (but it's technically a "chroma" control rather than a "saturation" one)
I already answered that before:
"It has always been this way when madVR comes in *direct* contact with any DXVA2 output. DXVA2cb/CUVID don't count as direct contact"Sorry, I just wasn't 100% sure on whether this was a madVR specific issue, or one with DXVA. I thought that it was a DXVA issue and that LAV Filters using copy-back would be similarly affected.
You do have a point. Putting black & white level adjustments controls in the madVR device setup might make more sense because you can set them there per monitor. True brightness & contrast controls which don't change black nor white levels might be better choices for the media player color controls. I guess brightness could simply be changed by changing the gamma curve. For contrast I also have an algorithm which doesn't modify black & white level.
What do the others say?I couldn't disagree more. I don't see how the Photoshop style of brightness/contrast adjustment is useful for video. Brightness/contrast controls for video exist solely to set the black/white point in the video to correct for level errors.
If you want to adjust midtone contrast of the image, that's what gamma controls are for. (and madVR already has keyboard shortcuts for ±gamma control)
Please retest DXVA2 scaling, it should be a lot different now compared to before. No more "scaling failed" and no more point resampling with AMD and Intel. Also probably better scaling quality with NVidia now.The image is still getting cropped slightly with DXVA2 scaling as well. (but less than it was before)
DragonQ
22nd November 2012, 19:18
So what is the implication of this new DXVA mode? Does this mean we can get hardware decoding plus high-quality MadVR scaling? Would the scaling still be done in software?
madshi
22nd November 2012, 19:21
Not sure if this is a bug or a limitation, but the IVTC filter does not work with DXVA2 decoding. In fact, I cannot even toggle to "film mode" using the keyboard shortcut.
That is as intended because the madVR IVTC algorithm currently runs on the CPU, so it doesn't work with native DXVA2 decoding.
debug log as requested.
Please upload it somewhere else. Attachments on this forum can sometimes take a long time to get approved.
But now I have another problem:
madVR fails to correctly enter FSE if there's a display mode change at the same time when DXVA2 downscaling is selected.
It's reproducible to me. Doesn't happen with other downscale methods.
It does not occur when using DXVA2 upscaling? That's weird, if it only occurs during downscaling but not during upscaling!. Can I have a debug log, please?
Using the MPC-HC controls, they are not working correctly. Or at least, not how everyone else does it - I do think your usage is more accurate, but it will confuse anyone familiar with how the brightness/contrast controls work on anything else.
+contrast should be −brightness
−contrast should be +brightness
+brightness should be +contrast
−brightness should be −contrast
Ok.
+saturation should be called +colour or +chroma
−saturation should be called −colour or −chroma
You're still continuing to talk about "saturation" vs. "chroma" without really saying which definition you're basing this on. Where is it defined exactly what a "saturation" control does and what a "chroma" control does? I hate to ask the same question multiple times, but you still haven't answered that. You're continuing to explain your understanding of what a saturation control does vs. chroma control, but you haven't said yet which definition/theory/concept this is based on.
Am I correct in thinking that the brightness/contrast controls only affect either the white/black points, and are not stretching the range?
i.e. −contrast under your naming scheme is only raising black from say 16 to 20, and leaves white at 235 rather than also reducing it by a similar amount at the same time. (say to 230)
I actually think that it would be useful to have a control that adjusted both black level and white level by the same amount to fix videos which have been encoded with the wrong levels settings (sometimes a video is recorded at 16-235 but gets encoded at 30–218 for some reason) but that's not what people would expect the brightness/contrast controls to do.
I do wish there was an option to add some custom levels presets or something inside madVR rather than manually adjusting brightness/contrast for each video though. Being able to switch between "PC Levels", "TV Levels", and "Custom 1", "Custom 2" etc. would be very useful. (or at least PC, TV, and 30-218)
The whole brightness and contrast control stuff is a big mess. Your opinion seems to be that I should design the controls in the same way displays do that. But is it really a good idea to do that? E.g. if you use the madVR controls to change the levels from 16-235 to 32-180 then you're also severely reducing the number of "steps" madVR can output. It would be better for image quality to use the display's controls instead.
Most colour management systems now use RGBCMY HSL controls to adjust things. It's a far easier way to calibrate the display because you can use dE'94 to split the colour error into its hue/saturation/lightness components and allows you to adjust each aspect individually. HSL controls allow you to dial in a display much quicker than any other method.
RGBCMY HSL controls (or xyY) are exactly what yCMS needs to adjust the LUT if the calculated points are not correct. (although personally I would rather just directly enter RGB output values, similar to when you write a custom LUT for some hardware LUT boxes)
A chroma control adjusts both saturation and lightness of a colour at the same time, and is considerably less useful in calibration. A chroma control is probably what most people would expect from something like this (http://i.imgbox.com/ach7eJyU.png) however, so your "linear saturation" implementation is fine there. (but it's technically a "chroma" control rather than a "saturation" one)
You still haven't explained where all these terms are defined that you're using. Are you basing all of this on the HSL colorspace definition? If so, you should really do some research because even if HSL might work reasonably ok for calibration, it's a very flawed system. "Lightness" as defined by HSL doesn't even take into account that green looks brighter to the human eye than blue does. So it's really a totally crappy system. If you try to judge madVR's saturation controls by HSL standards then yes, both "lightness" and "color" are changed. But the HSL term of "lightness" is totally bad. If you judge the madVR controls based on a better concept than HSL then madVR actually only changes saturation and nothing more. madVR splits the colors into luminance and chrominance (not luma and chroma) and luminance is left untouched by the saturation control. So if you think about it, "luminance" is somewhat comparable to HSL's "lightness". madVR's saturation control does not change "luminance", but it does change "lightness". But since the concept of luminance/chrominance is technically far superior to lightness/color, the proper name really is "saturation control" and not "chroma/color control", as far as I understand. If you disagree, I'm open for discussion, but I'd like some links that explain your definitions.
I couldn't disagree more. I don't see how the Photoshop style of brightness/contrast adjustment is useful for video. Brightness/contrast controls for video exist solely to set the black/white point in the video to correct for level errors.
But shouldn't level errors be corrected by using brightness/contrast controls in the display? Even if you think they should be corrected by madVR's controls, then don't they still belong into the madVR device setup, so they can be defined per monitor? If so, this can't be done via color controls, because the color controls are out of madVR's hands, so they can't be applied per monitor.
But then, media players do reapply the same color controls for every video, so the color controls are neither truely per monitor, nor are they per source file. This really is a mess...
If you want to adjust midtone contrast of the image, that's what gamma controls are for. (and madVR already has keyboard shortcuts for ±gamma control)
Changing the gamma curve can change the "brightness" of the image, but a contrast change is something different. For changing contrast you would apply an S-curve, which is different to what gamma adjustments do. Look here for more information about this:
http://tutes.tonebytone.com/ImageMagick/Enhance/SigmoidalContrast/index.php
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.