function Ylevels(clip clp, int a, float gamma, int b, int c, int d) { wicked="x "+string(a)+" - "+string(b)+" "+string(a)+" - / 1 "+string(gamma)+" / ^ "+string(d)+" "+string(c)+" - * "+string(c)+" +" # Reminder: Yexpr = "x a - b a - / 1 gamma / ^ d c - * c +" # return( clp.subtitle(wicked) ) return( clp.YV12LUT(Yexpr = wicked, U=2,V=2) ) } function YlevelsG(clip clp, int a, float gamma, int b, int c, int d) { wicked = gamma > 1.0 \ ? "x "+string(a)+" - "+string(b)+" "+string(a)+" - / 1 "+string(gamma)+" / ^ "+string(d)+" "+string(c)+" - * "+string(c)+" + x * x 255 x - * + 255 /" \ : "x "+string(a)+" - "+string(b)+" "+string(a)+" - / 1 "+string(gamma)+" / ^ "+string(d)+" "+string(c)+" - * "+string(c)+" + 255 x - * x x * + 255 /" return( clp.YV12LUT(Yexpr = wicked, U=2,V=2) ) } function YlevelsS(clip clp, int a, float gamma, int b, int c, int d) { wicked="x "+string(a)+" - "+string(b)+" "+string(a)+" - / 1 "+string(gamma)+" / ^ "+string(d)+" "+string(c)+" - * "+string(c)+" + x 162,97466 / sin 255 * * x 255 x 162,97466 / sin 255 * - * + 255 /" return( clp.YV12LUT(Yexpr = wicked, U=2,V=2) ) }