static void draw_slice(HYuvContext *s, AVFrame *frame, int y)

{

    int h, cy, i;

    int offset[AV_NUM_DATA_POINTERS];



    if (s->avctx->draw_horiz_band == NULL)

        return;



    h  = y - s->last_slice_end;

    y -= h;



    if (s->bitstream_bpp == 12)

        cy = y >> 1;

    else

        cy = y;



    offset[0] = frame->linesize[0] * y;

    offset[1] = frame->linesize[1] * cy;

    offset[2] = frame->linesize[2] * cy;

    for (i = 3; i < AV_NUM_DATA_POINTERS; i++)

        offset[i] = 0;

    emms_c();



    s->avctx->draw_horiz_band(s->avctx, frame, offset, y, 3, h);



    s->last_slice_end = y + h;

}

static void draw_slice(HYuvContext *s, AVFrame *frame, int y)

{

    int h, cy, i;

    int offset[AV_NUM_DATA_POINTERS];



    if (s->avctx->draw_horiz_band == NULL)

        return;



    h  = y - s->last_slice_end;

    y -= h;



    if (s->bitstream_bpp == 12)

        cy = y >> 1;

    else

        cy = y;



    offset[0] = frame->linesize[0] * y;

    offset[1] = frame->linesize[1] * cy;

    offset[2] = frame->linesize[2] * cy;

    for (i = 3; i < AV_NUM_DATA_POINTERS; i++)

        offset[i] = 0;

    emms_c();



    s->avctx->draw_horiz_band(s->avctx, frame, offset, y, 3, h);



    s->last_slice_end = y + h;

}

static void FUNC_0(HYuvContext *VAR_0, AVFrame *VAR_1, int VAR_2)

{

    int VAR_3, VAR_4, VAR_5;

    int VAR_6[AV_NUM_DATA_POINTERS];



    if (VAR_0->avctx->draw_horiz_band == NULL)

        return;



    VAR_3  = VAR_2 - VAR_0->last_slice_end;

    VAR_2 -= VAR_3;



    if (VAR_0->bitstream_bpp == 12)

        VAR_4 = VAR_2 >> 1;

    else

        VAR_4 = VAR_2;



    VAR_6[0] = VAR_1->linesize[0] * VAR_2;

    VAR_6[1] = VAR_1->linesize[1] * VAR_4;

    VAR_6[2] = VAR_1->linesize[2] * VAR_4;

    for (VAR_5 = 3; VAR_5 < AV_NUM_DATA_POINTERS; VAR_5++)

        VAR_6[VAR_5] = 0;

    emms_c();



    VAR_0->avctx->draw_horiz_band(VAR_0->avctx, VAR_1, VAR_6, VAR_2, 3, VAR_3);



    VAR_0->last_slice_end = VAR_2 + VAR_3;

}

static void FUNC_0(HYuvContext *VAR_0, AVFrame *VAR_1, int VAR_2)
{ int VAR_3, VAR_4, VAR_5; int VAR_6[AV_NUM_DATA_POINTERS]; if (VAR_0->avctx->draw_horiz_band == NULL)
return; VAR_3  = VAR_2 - VAR_0->last_slice_end; VAR_2 -= VAR_3; if (VAR_0->bitstream_bpp == 12)
VAR_4 = VAR_2 >> 1; else
VAR_4 = VAR_2; VAR_6[0] = VAR_1->linesize[0] * VAR_2; VAR_6[1] = VAR_1->linesize[1] * VAR_4; VAR_6[2] = VAR_1->linesize[2] * VAR_4; for (VAR_5 = 3; VAR_5 < AV_NUM_DATA_POINTERS; VAR_5++) VAR_6[VAR_5] = 0; emms_c(); VAR_0->avctx->draw_horiz_band(VAR_0->avctx, VAR_1, VAR_6, VAR_2, 3, VAR_3); VAR_0->last_slice_end = VAR_2 + VAR_3; }