static void deinterlace_bottom_field_inplace(uint8_t *src1, int src_wrap,

                                             int width, int height)

{

    uint8_t *src_m1, *src_0, *src_p1, *src_p2;

    int y;

    uint8_t *buf;

    buf = av_malloc(width);



    src_m1 = src1;

    memcpy(buf,src_m1,width);

    src_0=&src_m1[src_wrap];

    src_p1=&src_0[src_wrap];

    src_p2=&src_p1[src_wrap];

    for(y=0;y<(height-2);y+=2) {

        deinterlace_line_inplace(buf,src_m1,src_0,src_p1,src_p2,width);

        src_m1 = src_p1;

        src_0 = src_p2;

        src_p1 += 2*src_wrap;

        src_p2 += 2*src_wrap;

    }

    /* do last line */

    deinterlace_line_inplace(buf,src_m1,src_0,src_0,src_0,width);

    av_free(buf);

}

static void deinterlace_bottom_field_inplace(uint8_t *src1, int src_wrap,

                                             int width, int height)

{

    uint8_t *src_m1, *src_0, *src_p1, *src_p2;

    int y;

    uint8_t *buf;

    buf = av_malloc(width);



    src_m1 = src1;

    memcpy(buf,src_m1,width);

    src_0=&src_m1[src_wrap];

    src_p1=&src_0[src_wrap];

    src_p2=&src_p1[src_wrap];

    for(y=0;y<(height-2);y+=2) {

        deinterlace_line_inplace(buf,src_m1,src_0,src_p1,src_p2,width);

        src_m1 = src_p1;

        src_0 = src_p2;

        src_p1 += 2*src_wrap;

        src_p2 += 2*src_wrap;

    }

    

    deinterlace_line_inplace(buf,src_m1,src_0,src_0,src_0,width);

    av_free(buf);

}

static void FUNC_0(uint8_t *VAR_0, int VAR_1,

                                             int VAR_2, int VAR_3)

{

    uint8_t *src_m1, *src_0, *src_p1, *src_p2;

    int VAR_4;

    uint8_t *buf;

    buf = av_malloc(VAR_2);



    src_m1 = VAR_0;

    memcpy(buf,src_m1,VAR_2);

    src_0=&src_m1[VAR_1];

    src_p1=&src_0[VAR_1];

    src_p2=&src_p1[VAR_1];

    for(VAR_4=0;VAR_4<(VAR_3-2);VAR_4+=2) {

        deinterlace_line_inplace(buf,src_m1,src_0,src_p1,src_p2,VAR_2);

        src_m1 = src_p1;

        src_0 = src_p2;

        src_p1 += 2*VAR_1;

        src_p2 += 2*VAR_1;

    }

    

    deinterlace_line_inplace(buf,src_m1,src_0,src_0,src_0,VAR_2);

    av_free(buf);

}

static void FUNC_0(uint8_t *VAR_0, int VAR_1,
int VAR_2, int VAR_3)
{ uint8_t *src_m1, *src_0, *src_p1, *src_p2; int VAR_4; uint8_t *buf; buf = av_malloc(VAR_2); src_m1 = VAR_0; memcpy(buf,src_m1,VAR_2); src_0=&src_m1[VAR_1]; src_p1=&src_0[VAR_1]; src_p2=&src_p1[VAR_1]; for(VAR_4=0;VAR_4<(VAR_3-2);VAR_4+=2) { deinterlace_line_inplace(buf,src_m1,src_0,src_p1,src_p2,VAR_2); src_m1 = src_p1; src_0 = src_p2; src_p1 += 2*VAR_1; src_p2 += 2*VAR_1; } deinterlace_line_inplace(buf,src_m1,src_0,src_0,src_0,VAR_2); av_free(buf); }