yuv2rgb48_2_c_template(SwsContext *c, const uint16_t *buf0,

                       const uint16_t *buf1, const uint16_t *ubuf0,

                       const uint16_t *ubuf1, const uint16_t *vbuf0,

                       const uint16_t *vbuf1, const uint16_t *abuf0,

                       const uint16_t *abuf1, uint8_t *dest, int dstW,

                       int yalpha, int uvalpha, int y,

                       enum PixelFormat target)

{

    int  yalpha1 = 4095 - yalpha;

    int uvalpha1 = 4095 - uvalpha;

    int i;



    for (i = 0; i < (dstW >> 1); i++) {

        int Y1 = (buf0[i * 2]     * yalpha1  + buf1[i * 2]     * yalpha)  >> 19;

        int Y2 = (buf0[i * 2 + 1] * yalpha1  + buf1[i * 2 + 1] * yalpha)  >> 19;

        int U  = (ubuf0[i]        * uvalpha1 + ubuf1[i]        * uvalpha) >> 19;

        int V  = (vbuf0[i]        * uvalpha1 + vbuf1[i]        * uvalpha) >> 19;

        const uint8_t *r = (const uint8_t *) c->table_rV[V],

                      *g = (const uint8_t *)(c->table_gU[U] + c->table_gV[V]),

                      *b = (const uint8_t *) c->table_bU[U];



        dest[ 0] = dest[ 1] = r_b[Y1];

        dest[ 2] = dest[ 3] =   g[Y1];

        dest[ 4] = dest[ 5] = b_r[Y1];

        dest[ 6] = dest[ 7] = r_b[Y2];

        dest[ 8] = dest[ 9] =   g[Y2];

        dest[10] = dest[11] = b_r[Y2];

        dest += 12;

    }

}

yuv2rgb48_2_c_template(SwsContext *c, const uint16_t *buf0,

                       const uint16_t *buf1, const uint16_t *ubuf0,

                       const uint16_t *ubuf1, const uint16_t *vbuf0,

                       const uint16_t *vbuf1, const uint16_t *abuf0,

                       const uint16_t *abuf1, uint8_t *dest, int dstW,

                       int yalpha, int uvalpha, int y,

                       enum PixelFormat target)

{

    int  yalpha1 = 4095 - yalpha;

    int uvalpha1 = 4095 - uvalpha;

    int i;



    for (i = 0; i < (dstW >> 1); i++) {

        int Y1 = (buf0[i * 2]     * yalpha1  + buf1[i * 2]     * yalpha)  >> 19;

        int Y2 = (buf0[i * 2 + 1] * yalpha1  + buf1[i * 2 + 1] * yalpha)  >> 19;

        int U  = (ubuf0[i]        * uvalpha1 + ubuf1[i]        * uvalpha) >> 19;

        int V  = (vbuf0[i]        * uvalpha1 + vbuf1[i]        * uvalpha) >> 19;

        const uint8_t *r = (const uint8_t *) c->table_rV[V],

                      *g = (const uint8_t *)(c->table_gU[U] + c->table_gV[V]),

                      *b = (const uint8_t *) c->table_bU[U];



        dest[ 0] = dest[ 1] = r_b[Y1];

        dest[ 2] = dest[ 3] =   g[Y1];

        dest[ 4] = dest[ 5] = b_r[Y1];

        dest[ 6] = dest[ 7] = r_b[Y2];

        dest[ 8] = dest[ 9] =   g[Y2];

        dest[10] = dest[11] = b_r[Y2];

        dest += 12;

    }

}

FUNC_0(SwsContext *VAR_0, const uint16_t *VAR_1,

                       const uint16_t *VAR_2, const uint16_t *VAR_3,

                       const uint16_t *VAR_4, const uint16_t *VAR_5,

                       const uint16_t *VAR_6, const uint16_t *VAR_7,

                       const uint16_t *VAR_8, uint8_t *VAR_9, int VAR_10,

                       int VAR_11, int VAR_12, int VAR_13,

                       enum PixelFormat VAR_14)

{

    int  VAR_15 = 4095 - VAR_11;

    int VAR_16 = 4095 - VAR_12;

    int VAR_17;



    for (VAR_17 = 0; VAR_17 < (VAR_10 >> 1); VAR_17++) {

        int VAR_18 = (VAR_1[VAR_17 * 2]     * VAR_15  + VAR_2[VAR_17 * 2]     * VAR_11)  >> 19;

        int VAR_19 = (VAR_1[VAR_17 * 2 + 1] * VAR_15  + VAR_2[VAR_17 * 2 + 1] * VAR_11)  >> 19;

        int VAR_20  = (VAR_3[VAR_17]        * VAR_16 + VAR_4[VAR_17]        * VAR_12) >> 19;

        int VAR_21  = (VAR_5[VAR_17]        * VAR_16 + VAR_6[VAR_17]        * VAR_12) >> 19;

        const uint8_t *VAR_22 = (const uint8_t *) VAR_0->table_rV[VAR_21],

                      *g = (const uint8_t *)(VAR_0->table_gU[VAR_20] + VAR_0->table_gV[VAR_21]),

                      *b = (const uint8_t *) VAR_0->table_bU[VAR_20];



        VAR_9[ 0] = VAR_9[ 1] = r_b[VAR_18];

        VAR_9[ 2] = VAR_9[ 3] =   g[VAR_18];

        VAR_9[ 4] = VAR_9[ 5] = b_r[VAR_18];

        VAR_9[ 6] = VAR_9[ 7] = r_b[VAR_19];

        VAR_9[ 8] = VAR_9[ 9] =   g[VAR_19];

        VAR_9[10] = VAR_9[11] = b_r[VAR_19];

        VAR_9 += 12;

    }

}

FUNC_0(SwsContext *VAR_0, const uint16_t *VAR_1,
const uint16_t *VAR_2, const uint16_t *VAR_3,
const uint16_t *VAR_4, const uint16_t *VAR_5,
const uint16_t *VAR_6, const uint16_t *VAR_7,
const uint16_t *VAR_8, uint8_t *VAR_9, int VAR_10,
int VAR_11, int VAR_12, int VAR_13,
enum PixelFormat VAR_14)
{ int  VAR_15 = 4095 - VAR_11; int VAR_16 = 4095 - VAR_12; int VAR_17; for (VAR_17 = 0; VAR_17 < (VAR_10 >> 1); VAR_17++) { int VAR_18 = (VAR_1[VAR_17 * 2]     * VAR_15  + VAR_2[VAR_17 * 2]     * VAR_11)  >> 19; int VAR_19 = (VAR_1[VAR_17 * 2 + 1] * VAR_15  + VAR_2[VAR_17 * 2 + 1] * VAR_11)  >> 19; int VAR_20  = (VAR_3[VAR_17]        * VAR_16 + VAR_4[VAR_17]        * VAR_12) >> 19; int VAR_21  = (VAR_5[VAR_17]        * VAR_16 + VAR_6[VAR_17]        * VAR_12) >> 19; const uint8_t *VAR_22 = (const uint8_t *) VAR_0->table_rV[VAR_21],
*g = (const uint8_t *)(VAR_0->table_gU[VAR_20] + VAR_0->table_gV[VAR_21]),
*b = (const uint8_t *) VAR_0->table_bU[VAR_20]; VAR_9[ 0] = VAR_9[ 1] = r_b[VAR_18]; VAR_9[ 2] = VAR_9[ 3] =   g[VAR_18]; VAR_9[ 4] = VAR_9[ 5] = b_r[VAR_18]; VAR_9[ 6] = VAR_9[ 7] = r_b[VAR_19]; VAR_9[ 8] = VAR_9[ 9] =   g[VAR_19]; VAR_9[10] = VAR_9[11] = b_r[VAR_19]; VAR_9 += 12; } }