s->no_rounding ^= 1;
if(s->flipflop_rounding){ s->no_rounding ^= 1; }else{ s->no_rounding = 0; }
void msmpeg4_encode_picture_header(MpegEncContext * s, int picture_number){    int i;    align_put_bits(&s->pb);    put_bits(&s->pb, 2, s->pict_type - 1);    put_bits(&s->pb, 5, s->qscale);    s->rl_table_index = 2;    s->rl_chroma_table_index = 1; /* only for I frame */    s->dc_table_index = 1;    s->mv_table_index = 1; /* only if P frame */    s->use_skip_mb_code = 1; /* only if P frame */        if (s->pict_type == I_TYPE) {        put_bits(&s->pb, 5, 0x17); /* indicate only one "slice" */        code012(&s->pb, s->rl_chroma_table_index);        code012(&s->pb, s->rl_table_index);        put_bits(&s->pb, 1, s->dc_table_index);        s->no_rounding = 1;    } else {        put_bits(&s->pb, 1, s->use_skip_mb_code);                s->rl_chroma_table_index = s->rl_table_index;        code012(&s->pb, s->rl_table_index);        put_bits(&s->pb, 1, s->dc_table_index);        put_bits(&s->pb, 1, s->mv_table_index);        s->no_rounding ^= 1;    }    if (!init_done) {        /* init various encoding tables */        init_done = 1;        init_mv_table(&mv_tables[0]);        init_mv_table(&mv_tables[1]);        for(i=0;i<NB_RL_TABLES;i++)            init_rl(&rl_table[i]);    }#ifdef DEBUG    intra_count = 0;    printf("*****frame %d:\n", frame_count++);#endif}