case BI_TYPE: status = decode_bi_picture_header(v); break;
static int standard_decode_picture_primary_header(VC9Context *v){    GetBitContext *gb = &v->s.gb;    int status = 0;    if (v->finterpflag) v->interpfrm = get_bits(gb, 1);    skip_bits(gb, 2); //framecnt unused    if (v->rangered) v->rangeredfrm = get_bits(gb, 1);    v->s.pict_type = get_bits(gb, 1);    if (v->s.avctx->max_b_frames && !v->s.pict_type)    {        if (get_bits(gb, 1)) v->s.pict_type = I_TYPE;        else v->s.pict_type = P_TYPE;    }    else v->s.pict_type++; //P_TYPE    switch (v->s.pict_type)    {    case I_TYPE: status = decode_i_picture_header(v); break;    case BI_TYPE: status = decode_bi_picture_header(v); break;    case P_TYPE: status = decode_p_picture_primary_header(v); break;    case B_TYPE: status = decode_b_picture_primary_header(v); break;    }    if (status == FRAME_SKIPED)    {      av_log(v, AV_LOG_INFO, "Skipping frame...\n");      return status;    }    return 0;}