vl: Apply luma key filter before CSC conversion
authorNayan Deshmukh <nayan26deshmukh@gmail.com>
Wed, 8 Jun 2016 09:22:48 +0000 (14:52 +0530)
committerChristian König <christian.koenig@amd.com>
Thu, 9 Jun 2016 12:23:07 +0000 (14:23 +0200)
commitf24eb5a17830b8137045a626dbd55e75ed5e708d
tree18b9b2d2c5ab3b25ea7181bc467cf4b6a3aa66b3
parent037ce5d7343829a69ec9c7361a0964bc1366b019
vl: Apply luma key filter before CSC conversion

    Apply the luma key filter to the YCbCr values during the CSC conversion
    in video buffer shader. The initial values of max and min luma are set
    to opposite values to disable the filter initially and will be set when
    enabling it.

    Add extra parmeters min and max luma for the luma key filter in
    vl_compositor_set_csc_matrix in va, xvmc. Setting them
    to opposite value 1.f and 0.f respectively won't effect the CSC
    conversion

    v2: -Squash 1,2 and 3 into one patch to avoid breaking build of
        other components. (Christian)
        -use ureg_swizzle. (Christian)
        -change name of the variables. (Christian)

    v3: -Squash all patches in one to avoid breaking of build. (Emil)
        -wrap functions properly. (Emil)
        -use 0.0f and 1.0f instead of 0.f and 1.f respectively. (Emil)

    v4: -Divide it in two patches one which introduces the functionality
 and assigs dummy values to the changed functions and second which
 implements the lumakey filter. (Christian)
-use ureg_scalar instead ureg_swizzle. (Christian)

Signed-off-by: Nayan Deshmukh <nayan26deshmukh@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
src/gallium/auxiliary/vl/vl_compositor.c
src/gallium/auxiliary/vl/vl_compositor.h
src/gallium/state_trackers/va/context.c
src/gallium/state_trackers/vdpau/mixer.c
src/gallium/state_trackers/vdpau/output.c
src/gallium/state_trackers/xvmc/attributes.c
src/gallium/state_trackers/xvmc/context.c