*.mp4 guy
10th July 2011, 07:17
I've been trying to get mt_lutxy to work with some very large expressions, but I am getting odd behavior that doesn't fit what I would expect from a bug in the expression. The expressions being as large as they are, I want to try to rule out any limitations mt_lutxy may have.
for example the following always returns 0 for luminance regardless of how much is added to the output at the end of the expression:
Mt_LutXY(B1_D, B2_D, " X 128 - Y 128 - 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * > 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ 0.0045813 * 0.0360768 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 0.2659732 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 1.2067492 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 3.0899424 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 3.5156229 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 1 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / 0.00392377 * -0.01647633 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.02635537 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * -0.02057706 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.00916281 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * -0.00157565 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.00225319 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.01328592 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.39894228 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / exp 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / sqrt / * ? 3.75 A "+string(thresh)+" * > y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ 0.0045813 * 0.0360768 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 0.2659732 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 1.2067492 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 3.0899424 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 3.5156229 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 1 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / 0.00392377 * -0.01647633 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.02635537 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * -0.02057706 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.00916281 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * -0.00157565 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.00225319 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.01328592 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.39894228 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / exp 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / sqrt / * ? / * + 12800 + ", u=1, v=1)
the code tag was omitted for readability.
for example the following always returns 0 for luminance regardless of how much is added to the output at the end of the expression:
Mt_LutXY(B1_D, B2_D, " X 128 - Y 128 - 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * > 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ 0.0045813 * 0.0360768 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 0.2659732 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 1.2067492 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 3.0899424 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 3.5156229 + 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * 3.75 / 2 ^ * 1 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / 0.00392377 * -0.01647633 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.02635537 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * -0.02057706 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.00916281 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * -0.00157565 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.00225319 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.01328592 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / * 0.39894228 + 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / exp 3.75 1 "+string(N)+" 15 / 1 - 2 ^ - sqrt y 128 - abs x 128 - abs / "+string(thresh)+" * * / sqrt / * ? 3.75 A "+string(thresh)+" * > y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ 0.0045813 * 0.0360768 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 0.2659732 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 1.2067492 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 3.0899424 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 3.5156229 + y 128 - abs x 128 - abs / "+string(thresh)+" * 3.75 / 2 ^ * 1 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / 0.00392377 * -0.01647633 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.02635537 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * -0.02057706 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.00916281 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * -0.00157565 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.00225319 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.01328592 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / * 0.39894228 + 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / exp 3.75 y 128 - abs x 128 - abs / "+string(thresh)+" * / sqrt / * ? / * + 12800 + ", u=1, v=1)
the code tag was omitted for readability.