Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
11th September 2011, 01:33 | #9741 | Link | |
Registered User
Join Date: Jun 2011
Posts: 288
|
Quote:
I am using Nvidia though, so I am not sure how that would be compared to your Fusion (I assume it has integrated graphics). edit: By the way, if you don't have calibration tools for your TV (like me) and have tried many different settings for your set, you can look at this post: http://www.avforums.com/forums/14947541-post43.html It basically made my day after trying X number of expert 1/2 settings and never being completely happy.
__________________
SETUP: Win 10/MPC-HC/LAV/MadVR HARDWARE: Fractal Design Node 804 | Xeon E3-1260L v5 | Supermicro X11SSZ-TLN4F | Samsung 2x8GB DDR4 ECC | Samsung 850 EVO 1TB | MSI GTX 1650 Super | EVGA G2 750 Last edited by Xaurus; 11th September 2011 at 01:48. |
|
11th September 2011, 01:50 | #9742 | Link | |
Registered User
Join Date: Mar 2003
Location: Croatia / Zagreb
Posts: 6
|
Quote:
edit: By the way, if you don't have calibration tools for your TV (like me) and have tried many different settings for your set, you can look at this post: http://www.avforums.com/forums/14947541-post43.html I have Eye One display 2 so I wan't to calibrate my TV properly. But when I choose 0-255 in madVR, I only see 18-255 flashing, and when I choose 16-235, I see 2-25 flashing. Should RGB Limited clip all values under 16? EDIT: Zacate uses integrated 6310, in AMD Vision I set up pixel format 4:4:4 Full RGB PC Levels. Last edited by Messiah; 11th September 2011 at 01:53. |
|
11th September 2011, 03:58 | #9743 | Link | |
3 eyed CRT supporter
Join Date: Jan 2008
Location: Or-strayl-ya
Posts: 563
|
Quote:
Sorry....but everything doesn't *have* to be automated. |
|
11th September 2011, 04:04 | #9744 | Link |
( ≖‿≖)
Join Date: Jul 2011
Location: BW, Germany
Posts: 380
|
Haha wow, yes, this. I think most of use / many of us have more than one monitor. They have a power button for a reason.
__________________
Forget about my old .3dlut stuff, just use mpv if you want accurate color management |
11th September 2011, 04:40 | #9745 | Link |
Registered User
Join Date: Oct 2010
Posts: 1
|
Dear Madshi,
There is a problem that I've been having for quite a long time. It's the same problem that 3ngel had back on page 209, but to my knowledge, he never got it resolved. I've had to resort to watching low quality videos on the default renderer (using MPC-HC), which is irritating to say the least. Whenever I open a video, shown in the upper left-hand corner is this message: madVR reports: -creating Direct3D device failed (8876086c) This is extremely frustrating, because no amount of option-tweaking will fix it. I'm running a Dell Latitude d620 with an Intel 945gm Mobile Chipset. It has 224.0 MB of memory, and supports Dx9 Direct3D. I'm running windows XP. As far as I know, I meet the minimum hardware requirements. What can I do to resolve this problem? Thank you for your time. P.S. I tried to do the debug routine using the madVR[debug].ax file and switching the name and all that, but it didn't put a text file on the desktop. Otherwise, I would post a link to the log right now. If you would like to send me a personal message, I can give you an email address by which you can contact me, if that makes things easier for you. Thanks again. |
11th September 2011, 07:18 | #9746 | Link | |
( ≖‿≖)
Join Date: Jul 2011
Location: BW, Germany
Posts: 380
|
Quote:
As far as I can tell, when my value hits the .3dlut in step (6), it's expected to be encoded using a pure power of 2.2, correct? So the first thing I do is decode it back to rgb (or linear RGB) by raising it to a power of 2.2. Then I do whatever I wish with the value (eg. nothing), and I convert it back to the display's expected gamma level by raising it to, say, 1/2.2 - which will, assuming an ideal 2.2 gamma display, give me a linear intensity again. I was under the impression, however, that adjusting the encoded for display gamma to /higher/ values (eg. 2.35) will make the image appear slightly darker as a result - however, if I plug those values in (decode using 2.2, encode using 1/2.35), the image appears brighter than before. Where exactly am I going wrong here? Wouldn't encoding with 1/2.35 make the encoded R'G'B' signal match that of a 2.35 monitor (and since my monitor only has a 2.2 input to luminosity exponent, it /should/ appear darker than intended)?
__________________
Forget about my old .3dlut stuff, just use mpv if you want accurate color management Last edited by nand chan; 11th September 2011 at 07:41. |
|
11th September 2011, 08:58 | #9747 | Link |
Broadband Junkie
Join Date: Oct 2005
Posts: 1,859
|
It's brighter since the 1/2.35 encoding is linearized to 1.0, and afterwards it's returned to the decode gamma of 2.2.
Have you tried enabling gamma correction in madVR and setting it to 2.35? IIRC, that should return 1/2.35 data which was linearized, back to a gamma to 2.35. Step (9) is actually a madVR shader step, where madVR does any gamma correction needed to the 2.2 gamma 3dlut based on the information in 3dlut header and user settings. Since I've never used or asked specifically about how gamma correction works in madVR, I'm only half-certain the above is correct. Madshi or yesgrey, please correct me if I'm way off. Last edited by cyberbeing; 11th September 2011 at 09:15. |
11th September 2011, 09:16 | #9748 | Link | |||
( ≖‿≖)
Join Date: Jul 2011
Location: BW, Germany
Posts: 380
|
Quote:
Quote:
What I'm basically trying to do is simulate the effects of the madVR gamma correction using a .3dlut, so using the actual tool would defeat the purpose. Quote:
2. If you were referring to the gamut correction which madVR performs, it does that before the values enter the .3dlut - it reads out the input primaries information from the .3dlut and scales the colors into that color space. To my knowledge, madVR shouldn't be touching the output of the .3dlut, other than dithering it down to screen depth (+ rendering subtitles). I'll probably have to ask madshi about this. Edit: Never mind, I approached the problem visually (as I love to do), and the solution began to become clear to me. I was mixing up the two curves. The red line is a 2.2 display, the light blue line is a 2.2 signal for that display. The two, when applied in succession, result in the purple line in the center which is the linear light output. However, if I use a 2.35 display (darker), I need to encode a /brighter/ curve (1/2.35, shown in dark blue) to compensate. As a result, a brighter curve on the same display appears brighter. Edit 2: Also, thinking about it this way, made me realize how to achieve the result I want. In essence, I want to compute the value which would be equal to a (1/2.2) encoded value being rendered on a 2.35 screen - which would appear slightly darker. Or, in other words, I want my x₂ = (x₁∧(1/2.2))∧2.35. Now, we know that our original input x₁' = x₁∧(1/2.2) since madVR adjusts to 2.2 PPC already before it hits the .3dlut, so we can pop that right into the formula: x₂ = x₁'∧2.35. And, of course, since we know our display is x₂=x₂'∧2.2, we just need to compensate for that: x₂' = x₂∧(1/2.2) = (x₁'∧2.35)∧(1/2.2). And there we have our formula: 1. Exponentiate to the new desired gamma curve 2. Exponentiate to the inverse of the old gamma curve
__________________
Forget about my old .3dlut stuff, just use mpv if you want accurate color management Last edited by nand chan; 11th September 2011 at 09:53. |
|||
11th September 2011, 09:54 | #9749 | Link | |||
Broadband Junkie
Join Date: Oct 2005
Posts: 1,859
|
Edit: After reading your edit, my reply isn't needed? If I completely misunderstood what you were trying to figure out, disregard the below.
Quote:
In step (7) the video which has a gamma of 2.2 is converted to linear light. If you use 1/2.35 as the encoding for the 3dlut, everything will get brighter in step (7) since the video isn't 2.35, it's 2.2. IIRC, madVR does read the 3dlut header to decide how to convert to linear light for step (7), but madshi would need to confirm. The longer I go on trying the explain things, the more likely I'm going to get something wrong. Encoding gamma (3dlut) = madVR gamma (gamma correction setting) is equivalent to no gamma correction. In other words, the 3dlut set with an encoding of 1/2.35 and madVR set to 2.35, it means no gamma correction is performed by madVR shaders. Quote:
Quote:
Edit2: madshi, I hope you can push out a new version of madVR soon which fixes the problem of it holding onto decoder references when a new video is opened. It causes a new instance of CoreAVC 3.x to be created each time, resulting in what is basically a memory leak. Last edited by cyberbeing; 11th September 2011 at 10:10. |
|||
11th September 2011, 10:00 | #9750 | Link |
Registered User
Join Date: Feb 2006
Posts: 1,076
|
I must say i'm getting a bit annoyed getting MadVR to work.
I'm on Win7-64, using 32 bit version of MPC-HT (current). I downloaded madVR 074 and put it in C:\MadVR. I'm logged in as admin and runned install.bat, even tried activating the administrator account with the 'net user ...' command. When i want to open madVR's setting page, it keeps complaining that the instance cannot be found, and to make sure the firewall isnt blocking madvr. But even if i disable the firewall it wont work. What to do ? Last edited by G_M_C; 11th September 2011 at 10:09. |
11th September 2011, 10:12 | #9751 | Link | ||||
( ≖‿≖)
Join Date: Jul 2011
Location: BW, Germany
Posts: 380
|
Indeed so.
Quote:
The .3dlut encompasses the entire process from 8 bit to 16 bit, madVR never uses 64 bit values. The only things madVR does after the .3dlut output are the steps below the second “madVR:”, aka dither down to screen depth. Quote:
Quote:
As such, no matter what gamma the user desires, the input value will always be on the scale ^(1/2.2) which is what the monitor has to work with, and all of my edits should be transferred back to such. Btw, what is referred to as “Display corrected gamma” in step (9) means yCMS fixes the gamma to account for any display inaccuracies - eg. it “simulates” a true 2.2 display - this has /nothing/ to do with the madVR “enable gamma processing” feature. Quote:
Ps. I'd also like to correct step (4) - madVR does in fact adapt the white point to the display's as well.
__________________
Forget about my old .3dlut stuff, just use mpv if you want accurate color management Last edited by nand chan; 11th September 2011 at 10:26. |
||||
11th September 2011, 10:36 | #9752 | Link |
( ≖‿≖)
Join Date: Jul 2011
Location: BW, Germany
Posts: 380
|
Having done some experimenting, it seems like the usage of ICC profiles and .ti3 files and yCMS and all of that fancy stuff is, at least partially, completely unnecessary! I'm doing some experiments with madVR's built in chromatic adaption - it's basically just as precise as gamut mapping with ICC profiles or yCMS, even white point adaption.
Since ArgyllCMS's .cal files take care gamma fixing as well (making sure that if a perfect 2.2 enters the .cal, a perfect 2.2 leaves the screen), all we have to do is 1. tag the input primaries of the monitor profile and 2. load the calfile! A simple madVR-compatible .3ls for gamut and gamma fixing could look something like this: Code:
# Set the properties properly !Filetype(3DLUT) !Input_Range(Limited) !Output_Range(Limited) !Input_Primaries(0.6821358317, 0.303858037, 0.19746212, 0.70357813, 0.14572444, 0.0486, 0.31289517, 0.33084743) !Pixel(CalFile("standard.ti3")) Of course, this isn't a real 3D LUT implementation - it's just a 3x1D LUT, no better than the graphics card's CLUTs will provide (except maybe with 64 bit interpolation) - but that can be easily fixed from there. Given a known input gamma (1/2.2), one can construct a virtual RGB profile with the exact same primaries as the output profile and the (1/2.2) gamma, eg. using LittleCMS, and then just use the ICC to fix all inconsistencies. One could even then encode the difference only and LZO compress it, which will result in a remarkably small .3dl2 since all of the complex gamut mapping code will be abstracted away within the madVR's GPU chain. As such, we could expect much faster load times as well. I will be experimenting around with this solution. With the addition of the video card's CLUTs, we might not even need the .3dlut at all (except for a “blank” .3dlut that tags the primaries - madshi, consider allowing us to set the primaries without using a .3dlut?) Edit: The only skepticism I have right now is what happens if the monitor's gamut is /smaller/ than BT.709. Does madVR simply clip values, or does it properly convert them to L*Ch (polar coordinates of L*ab) and reduce the chromaticity? (I'm guessing it doesn't, or does linear pulling, or some other cheap trick) I'll have to ask madshi about this: How does madVR behave if the .3dlut's input primaries are smaller than the BT.709 primaries?
__________________
Forget about my old .3dlut stuff, just use mpv if you want accurate color management Last edited by nand chan; 11th September 2011 at 10:41. |
11th September 2011, 10:38 | #9753 | Link | |
QB the Slayer
Join Date: Feb 2011
Location: Toronto
Posts: 697
|
Quote:
QB
__________________
|
|
11th September 2011, 10:45 | #9755 | Link | |
Broadband Junkie
Join Date: Oct 2005
Posts: 1,859
|
Quote:
madshi, when you come back around, can you clarify the above for me? Once again, how does madVR interact with the 3DLUT during steps (6) through (9) in >=0.62 compared to <=0.61? What does the 64bit refer to in the steps you listed? It's beginning to seem that many of my complaints about the new 3dlut limitations introduced in 0.62 from the 'dumb' 3dlut behavior in 0.61, were all just yCMS limitations imposed by yesgrey??? Last edited by cyberbeing; 11th September 2011 at 10:50. |
|
11th September 2011, 10:48 | #9756 | Link |
Registered User
Join Date: Apr 2011
Posts: 141
|
I found a setup that works. running videos at 25p and then having 50hz at the tv. but now i get glitches. i did not at 24p60 or 24p24. are there any settings that work better in 50hz? It seems the glitches are not rerlated to 25p playback. only when i switch the resolution to 50hz
Edit: seems to work to enable the glitch hacks. Is it a bug maybe that madvr dosnt work as well with 50hz as 60hz or 24hz? Last edited by Budtz; 11th September 2011 at 11:50. |
12th September 2011, 01:37 | #9757 | Link | |
Registered User
Join Date: Apr 2009
Posts: 1,019
|
Quote:
24/25p@24/60 was fine, but 25@50 or 30@60 did not work correctly. If your card supports it, use D3D11 presentation, and enable the "limit rendering times to avoid glitches" option. Everything else as far as rendering is concerned should be left at the defaults. (though you may want to increase the buffer sizes) It would be interesting to know if the "limit rendering times to avoid glitches" option causes problems for anyone, regardless of whether or not they are experiencing this issue. It seems like it could maybe be enabled by default. Last edited by 6233638; 12th September 2011 at 01:39. |
|
12th September 2011, 04:14 | #9758 | Link |
Asker of Questions
Join Date: Oct 2001
Location: Florida
Posts: 433
|
madVR is the best thing. Sorry if that doesn't add much to the conversation.
__________________
"The real trick to optimizing color space conversions is of course to not do them." --trbarry, April 2002 |
12th September 2011, 07:38 | #9759 | Link | |
Registered User
Join Date: Feb 2006
Posts: 1,076
|
Quote:
ex: 1080i50 -> deinterlaced to 1080p25 and displayed on 1080p50. |
|
12th September 2011, 07:42 | #9760 | Link |
Registered User
Join Date: Jan 2008
Posts: 589
|
@madshi: I don't know if you're actively following the thread about the 3dlut processing tools from nand chan, but I think you should take a look at the the discussion with Graeme Gill (the author of ArgyllCMS, no less), who doesn't seem convinced that using 256x256x256 lookup tables is the best idea ever. Maybe you could tell him your side of the story
|
Tags |
direct compute, dithering, error diffusion, madvr, ngu, nnedi3, quality, renderer, scaling, uhd upscaling, upsampling |
|
|