引用
最初由 f3uki 发布
注意这个:
return( ( tex2D( s0, tex ) - Const_1 ) * Const_2 )
常量Const_2明显是色彩范围的修正量,所以应该是235-16=219没错
额。。。脑糊了,抱歉。。。。。
但是很奇怪的是。。。。与使用ffdshow raw video filter,将level的输入范围调到16-235得到的结果和shader得到的不同。。。不知道是为何。明显shader的会比较亮。。。。
可能是因为tex2D本身已经是RGB范畴,由于YCbCr本身并非都是16-235的关系吧。CbCr是16-240。也就是说经过YCbCr到RGB的直接转换,RGB的值并非是完全是进行(R-Const_1)*Const_2这样线性的修正就可以的吧。。。。。
我去看看能不能用YCbCr到RGB的公式来改进一下这个shader。