static int mpegvideo_probe(AVProbeData *p)

{

    uint32_t code= -1;

    int pic=0, seq=0, slice=0, pspack=0, vpes=0, apes=0, res=0, sicle=0;

    int i;

    uint32_t last = 0;



    for(i=0; i<p->buf_size; i++){

        code = (code<<8) + p->buf[i];

        if ((code & 0xffffff00) == 0x100) {

            switch(code){

            case     SEQ_START_CODE:   seq++; break;

            case PICTURE_START_CODE:   pic++; break;

            case    PACK_START_CODE: pspack++; break;

            case              0x1b6:

                                        res++; break;

            }

            if (code >= SLICE_START_CODE && code <= 0x1af) {

                if (last >= SLICE_START_CODE && last <= 0x1af) {

                    if (code >= last) slice++;

                    else              sicle++;

                }else{

                    if (code == SLICE_START_CODE) slice++;

                    else                          sicle++;

                }

            }

            if     ((code & 0x1f0) == VIDEO_ID)   vpes++;

            else if((code & 0x1e0) == AUDIO_ID)   apes++;

            last = code;

        }

    }

    if(seq && seq*9<=pic*10 && pic*9<=slice*10 && !pspack && !apes && !res && slice > sicle) {

        if(vpes) return AVPROBE_SCORE_EXTENSION / 4;

        else     return pic>1 ? AVPROBE_SCORE_EXTENSION + 1 : AVPROBE_SCORE_EXTENSION / 2; // +1 for .mpg

    }

    return 0;

}

static int mpegvideo_probe(AVProbeData *p)

{

    uint32_t code= -1;

    int pic=0, seq=0, slice=0, pspack=0, vpes=0, apes=0, res=0, sicle=0;

    int i;

    uint32_t last = 0;



    for(i=0; i<p->buf_size; i++){

        code = (code<<8) + p->buf[i];

        if ((code & 0xffffff00) == 0x100) {

            switch(code){

            case     SEQ_START_CODE:   seq++; break;

            case PICTURE_START_CODE:   pic++; break;

            case    PACK_START_CODE: pspack++; break;

            case              0x1b6:

                                        res++; break;

            }

            if (code >= SLICE_START_CODE && code <= 0x1af) {

                if (last >= SLICE_START_CODE && last <= 0x1af) {

                    if (code >= last) slice++;

                    else              sicle++;

                }else{

                    if (code == SLICE_START_CODE) slice++;

                    else                          sicle++;

                }

            }

            if     ((code & 0x1f0) == VIDEO_ID)   vpes++;

            else if((code & 0x1e0) == AUDIO_ID)   apes++;

            last = code;

        }

    }

    if(seq && seq*9<=pic*10 && pic*9<=slice*10 && !pspack && !apes && !res && slice > sicle) {

        if(vpes) return AVPROBE_SCORE_EXTENSION / 4;

        else     return pic>1 ? AVPROBE_SCORE_EXTENSION + 1 : AVPROBE_SCORE_EXTENSION / 2; 

    }

    return 0;

}

    int i;             case     SEQ_START_CODE:   seq++; break;
static int FUNC_0(AVProbeData *VAR_0)

{

    uint32_t code= -1;

    int VAR_1=0, VAR_2=0, VAR_3=0, VAR_4=0, VAR_5=0, VAR_6=0, VAR_7=0, VAR_8=0;

    int VAR_9;

    uint32_t last = 0;



    for(VAR_9=0; VAR_9<VAR_0->buf_size; VAR_9++){

        code = (code<<8) + VAR_0->buf[VAR_9];

        if ((code & 0xffffff00) == 0x100) {

            switch(code){

            case     SEQ_START_CODE:   VAR_2++; break;

            case PICTURE_START_CODE:   VAR_1++; break;

            case    PACK_START_CODE: VAR_4++; break;

            case              0x1b6:

                                        VAR_7++; break;

            }

            if (code >= SLICE_START_CODE && code <= 0x1af) {

                if (last >= SLICE_START_CODE && last <= 0x1af) {

                    if (code >= last) VAR_3++;

                    else              VAR_8++;

                }else{

                    if (code == SLICE_START_CODE) VAR_3++;

                    else                          VAR_8++;

                }

            }

            if     ((code & 0x1f0) == VIDEO_ID)   VAR_5++;

            else if((code & 0x1e0) == AUDIO_ID)   VAR_6++;

            last = code;

        }

    }

    if(VAR_2 && VAR_2*9<=VAR_1*10 && VAR_1*9<=VAR_3*10 && !VAR_4 && !VAR_6 && !VAR_7 && VAR_3 > VAR_8) {

        if(VAR_5) return AVPROBE_SCORE_EXTENSION / 4;

        else     return VAR_1>1 ? AVPROBE_SCORE_EXTENSION + 1 : AVPROBE_SCORE_EXTENSION / 2; 

    }

    return 0;

}

static int FUNC_0(AVProbeData *VAR_0)
{ uint32_t code= -1; int VAR_1=0, VAR_2=0, VAR_3=0, VAR_4=0, VAR_5=0, VAR_6=0, VAR_7=0, VAR_8=0; int VAR_9; uint32_t last = 0; for(VAR_9=0; VAR_9<VAR_0->buf_size; VAR_9++){ code = (code<<8) + VAR_0->buf[VAR_9]; if ((code & 0xffffff00) == 0x100) { switch(code){ case     SEQ_START_CODE:   VAR_2++; break; case PICTURE_START_CODE:   VAR_1++; break; case    PACK_START_CODE: VAR_4++; break; case              0x1b6:
VAR_7++; break; } if (code >= SLICE_START_CODE && code <= 0x1af) { if (last >= SLICE_START_CODE && last <= 0x1af) { if (code >= last) VAR_3++; else              VAR_8++; }else{ if (code == SLICE_START_CODE) VAR_3++; else                          VAR_8++; } } if     ((code & 0x1f0) == VIDEO_ID)   VAR_5++; else if((code & 0x1e0) == AUDIO_ID)   VAR_6++; last = code; } } if(VAR_2 && VAR_2*9<=VAR_1*10 && VAR_1*9<=VAR_3*10 && !VAR_4 && !VAR_6 && !VAR_7 && VAR_3 > VAR_8) { if(VAR_5) return AVPROBE_SCORE_EXTENSION / 4; else     return VAR_1>1 ? AVPROBE_SCORE_EXTENSION + 1 : AVPROBE_SCORE_EXTENSION / 2; } return 0; }