亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? getvlc.cc

?? ac3的解碼程序
?? CC
字號:
#include "all.hh"#include "getvlc.hh"/* private prototypes */inline int getIMBtype(void);inline int getPMBtype(void);inline int getBMBtype(void);inline int getDMBtype(void);inline int getspIMBtype(void);inline int getspPMBtype(void);inline int getspBMBtype(void);inline int getSNRMBtype(void);int getMBtype(){  if (ld->scalable_mode==SC_SNR) return getSNRMBtype();  else{    switch (pict_type){    case I_TYPE: return ld->pict_scal ? getspIMBtype() : getIMBtype();    case P_TYPE: return ld->pict_scal ? getspPMBtype() : getPMBtype();    case B_TYPE: return ld->pict_scal ? getspBMBtype() : getBMBtype();    case D_TYPE: return getDMBtype();    default: if (!quiet) { msg("getMBtype: unknown coding type");dec2hex(pict_type);}      /* MPEG-1 only, not implemented */    }  }  return 0;}inline int getIMBtype(){#ifdef TRACE  if (trace) printf("mb_type(I) ");#endif  if (vs->getbits(1)){#ifdef TRACE    if (trace) printf("(1): Intra (1)\n");#endif    return 1;  }  if (!vs->getbits(1)){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getIMBtype)\n");    fault = 1;  }#ifdef TRACE  if (trace) printf("(01): Intra, Quant (17)\n");#endif  return 17;}#ifdef TRACEstatic char *MBdescr[]={  "",                  "Intra",        "No MC, Coded",         "",  "Bwd, Not Coded",    "",             "Bwd, Coded",           "",  "Fwd, Not Coded",    "",             "Fwd, Coded",           "",  "Interp, Not Coded", "",             "Interp, Coded",        "",  "",                  "Intra, Quant", "No MC, Coded, Quant",  "",  "",                  "",             "Bwd, Coded, Quant",    "",  "",                  "",             "Fwd, Coded, Quant",    "",  "",                  "",             "Interp, Coded, Quant", ""};#endifinline int getPMBtype(){  int code;#ifdef TRACE  if (trace) printf("mb_type(P) (");#endif  if ((code = vs->showbits(6))>=8){    code >>= 3;    vs->flushbits(PMBtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,3,PMBtab0[code].len);      printf("): %s (%d)\n",MBdescr[PMBtab0[code].val],PMBtab0[code].val);    }#endif    return PMBtab0[code].val;  }  if (code==0){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getPMBtype)\n");    fault = 1;    return 0;  }  vs->flushbits(PMBtab1[code].len);#ifdef TRACE  if (trace){    printbits(code,6,PMBtab1[code].len);    printf("): %s (%d)\n",MBdescr[PMBtab1[code].val],PMBtab1[code].val);  }#endif  return PMBtab1[code].val;}inline int getBMBtype(){  int code;#ifdef TRACE  if (trace) printf("mb_type(B) (");#endif  if ((code = vs->showbits(6))>=8){    code >>= 2;    vs->flushbits(BMBtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,4,BMBtab0[code].len);      printf("): %s (%d)\n",MBdescr[BMBtab0[code].val],BMBtab0[code].val);    }#endif    return BMBtab0[code].val;  }  if (code==0){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getBMBtype)\n");    fault = 1;    return 0;  }  vs->flushbits(BMBtab1[code].len);#ifdef TRACE  if (trace){    printbits(code,6,BMBtab1[code].len);    printf("): %s (%d)\n",MBdescr[BMBtab1[code].val],BMBtab1[code].val);  }#endif  return BMBtab1[code].val;}inline int getDMBtype(){  if (!vs->getbits(1)){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getDMBtype)\n");    fault=1;  }  return 1;}/* macroblock_type for pictures with spatial scalability */inline int getspIMBtype(){  int code;#ifdef TRACE  if (trace)    printf("mb_type(I,spat) (");#endif  code = vs->showbits(4);  if (code==0){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getspIMBtype)\n");    fault = 1;    return 0;  }#ifdef TRACE  if (trace){    printbits(code,4,spIMBtab[code].len);    printf("): %02x\n",spIMBtab[code].val);  }#endif  vs->flushbits(spIMBtab[code].len);  return spIMBtab[code].val;}inline int getspPMBtype(){#ifdef TRACE  if (trace) printf("mb_type(P,spat) (");#endif  int code = vs->showbits(7);  if (code<2){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getspPMBtype)\n");    fault = 1;    return 0;  }  if (code>=16){    code >>= 3;    vs->flushbits(spPMBtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,4,spPMBtab0[code].len);      printf("): %02x\n",spPMBtab0[code].val);    }#endif    return spPMBtab0[code].val;  }  vs->flushbits(spPMBtab1[code].len);#ifdef TRACE  if (trace){    printbits(code,7,spPMBtab1[code].len);    printf("): %02x\n",spPMBtab1[code].val);  }#endif  return spPMBtab1[code].val;}inline int getspBMBtype(){  VLCtab *p;#ifdef TRACE  if (trace) printf("mb_type(B,spat) (");#endif  int code = vs->showbits(9);  if (code>=64)      p = &spBMBtab0[(code>>5)-2];  else if (code>=16) p = &spBMBtab1[(code>>2)-4];  else if (code>=8)  p = &spBMBtab2[code-8];  else {    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getspBMBtype)\n");    fault = 1;    return 0;  }  vs->flushbits(p->len);#ifdef TRACE  if (trace){    printbits(code,9,p->len);    printf("): %02x\n",p->val);  }#endif  return p->val;}inline int getSNRMBtype(){  int code = vs->showbits(3);  if (code==0){    if (!quiet) fprintf(stderr,"Invalid macroblock_type code (getSNSRMBtype)\n");    fault = 1;    return 0;  }  vs->flushbits(SNRMBtab[code].len);  return SNRMBtab[code].val;}int getMV(){  int code;#ifdef TRACE  if (trace) printf("motion_code (");#endif  if (vs->getbits(1)){#ifdef TRACE    if (trace) printf("0): 0\n");#endif    return 0;  }  if ((code = vs->showbits(9))>=64){    code >>= 6;    vs->flushbits(MVtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,3,MVtab0[code].len);      printf("%d): %d\n",        vs->showbits(1),vs->showbits(1)?-MVtab0[code].val:MVtab0[code].val);    }#endif    return vs->getbits(1)?-MVtab0[code].val:MVtab0[code].val;  }  if (code>=24){    code >>= 3;    vs->flushbits(MVtab1[code].len);#ifdef TRACE    if (trace){      printbits(code,6,MVtab1[code].len);      printf("%d): %d\n",        vs->showbits(1),vs->showbits(1)?-MVtab1[code].val:MVtab1[code].val);    }#endif    return vs->getbits(1)?-MVtab1[code].val:MVtab1[code].val;  }  if ((code-=12)<0){    if (!quiet) fprintf(stderr,"Invalid motion_vector code\n");    fault=1;    return 0;  }  vs->flushbits(MVtab2[code].len);#ifdef TRACE  if (trace){    printbits(code+12,9,MVtab2[code].len);    printf("%d): %d\n",      vs->showbits(1),vs->showbits(1)?-MVtab2[code].val:MVtab2[code].val);  }#endif  return vs->getbits(1) ? -MVtab2[code].val : MVtab2[code].val;}/* get differential motion vector (for dual prime prediction) */int getDMV(){#ifdef TRACE  if (trace) printf("dmvector (");#endif  if (vs->getbits(1)){#ifdef TRACE    if (trace) printf(vs->showbits(1) ? "11): -1\n" : "10): 1\n");#endif    return vs->getbits(1) ? -1 : 1;  }  else {#ifdef TRACE    if (trace) printf("0): 0\n");#endif    return 0;  }}int getCBP(){  int code;#ifdef TRACE  if (trace) printf("coded_block_pattern_420 (");#endif  if ((code = vs->showbits(9))>=128){    code >>= 4;    vs->flushbits(CBPtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,5,CBPtab0[code].len);      printf("): ");      printbits(CBPtab0[code].val,6,6);      printf(" (%d)\n",CBPtab0[code].val);    }#endif    return CBPtab0[code].val;  }  if (code>=8){    code >>= 1;    vs->flushbits(CBPtab1[code].len);#ifdef TRACE    if (trace){      printbits(code,8,CBPtab1[code].len);      printf("): ");      printbits(CBPtab1[code].val,6,6);      printf(" (%d)\n",CBPtab1[code].val);    }#endif    return CBPtab1[code].val;  }  if (code<1){    if (!quiet) fprintf(stderr,"Invalid coded_block_pattern code\n");    fault = 1;    return 0;  }  vs->flushbits(CBPtab2[code].len);#ifdef TRACE  if (trace){    printbits(code,9,CBPtab2[code].len);    printf("): ");    printbits(CBPtab2[code].val,6,6);    printf(" (%d)\n",CBPtab2[code].val);  }#endif  return CBPtab2[code].val;}int getMBA(){  int code, val;#ifdef TRACE  if (trace) printf("macroblock_address_increment (");#endif  val=0;  while ((code = vs->showbits(11))<24){    if (code!=15){     /* if not macroblock_stuffing */      if (code==8){    /* if macroblock_escape */#ifdef TRACE        if (trace) printf("00000001000 ");#endif        val+= 33;      }      else {        if (!quiet) fprintf(stderr,"Invalid macroblock_address_increment code\n");        fault = 1;        return 1;      }    }#ifdef TRACE    else if (trace) printf("00000001111 ");#endif    vs->flushbits(11);  }  if (code>=1024){    vs->flushbits(1);#ifdef TRACE    if (trace) printf("1): %d\n",val+1);#endif    return val + 1;  }  if (code>=128){    code >>= 6;    vs->flushbits(MBAtab1[code].len);#ifdef TRACE    if (trace){      printbits(code,5,MBAtab1[code].len);      printf("): %d\n",val+MBAtab1[code].val);    }#endif    return val + MBAtab1[code].val;  }  code-= 24;  vs->flushbits(MBAtab2[code].len);#ifdef TRACE  if (trace){    printbits(code+24,11,MBAtab2[code].len);    printf("): %d\n",val+MBAtab2[code].val);  }#endif  return val + MBAtab2[code].val;}int getDClum(){  int code, size, val;#ifdef TRACE  if (trace) printf("dct_dc_size_luminance: (");#endif  /* decode length */  code = vs->showbits(5);  if (code<31){    size = DClumtab0[code].val;    vs->flushbits(DClumtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,5,DClumtab0[code].len);      printf("): %d",size);    }#endif  }  else {    code = vs->showbits(9) - 0x1f0;    size = DClumtab1[code].val;    vs->flushbits(DClumtab1[code].len);#ifdef TRACE    if (trace){      printbits(code+0x1f0,9,DClumtab1[code].len);      printf("): %d",size);    }#endif  }#ifdef TRACE  if (trace) printf(", dct_dc_differential (");#endif  if (size==0) val = 0;  else {    val = vs->getbits(size);#ifdef TRACE    if (trace) printbits(val,size,size);#endif    if ((val & (1<<(size-1)))==0)  val-= (1<<size) - 1;  }#ifdef TRACE  if (trace) printf("): %d\n",val);#endif  return val;}int getDCchrom(){  int code, size, val;#ifdef TRACE  if (trace) printf("dct_dc_size_chrominance: (");#endif  /* decode length */  code = vs->showbits(5);  if (code<31){    size = DCchromtab0[code].val;    vs->flushbits(DCchromtab0[code].len);#ifdef TRACE    if (trace){      printbits(code,5,DCchromtab0[code].len);      printf("): %d",size);    }#endif  }  else {    code = vs->showbits(10) - 0x3e0;    size = DCchromtab1[code].val;    vs->flushbits(DCchromtab1[code].len);#ifdef TRACE    if (trace){      printbits(code+0x3e0,10,DCchromtab1[code].len);      printf("): %d",size);    }#endif  }#ifdef TRACE  if (trace) printf(", dct_dc_differential (");#endif  if (size==0) val = 0;  else {    val = vs->getbits(size);#ifdef TRACE    if (trace) printbits(val,size,size);#endif    if ((val & (1<<(size-1)))==0) val-= (1<<size) - 1;  }#ifdef TRACE  if (trace) printf("): %d\n",val);#endif  return val;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区视频在线观看2020| 亚洲人123区| 欧美日韩在线三级| 成人精品小蝌蚪| 国产成人精品免费| 成人午夜视频在线| 国产成人无遮挡在线视频| 久久国产精品99精品国产| 婷婷丁香久久五月婷婷| 亚洲国产精品久久人人爱| 国产精品久久三区| 国产精品高潮久久久久无| 国产精品国产三级国产aⅴ无密码| 久久精品欧美一区二区三区不卡| 26uuu久久天堂性欧美| 久久五月婷婷丁香社区| 久久婷婷国产综合精品青草| 91精品国产丝袜白色高跟鞋| 精品电影一区二区三区| 日韩视频不卡中文| 欧美一卡二卡三卡四卡| 欧美大片在线观看| 久久蜜桃av一区二区天堂 | 成人福利视频网站| 国产大片一区二区| 成人午夜伦理影院| 97成人超碰视| 欧美色视频一区| 日韩欧美国产电影| 亚洲国产高清aⅴ视频| 亚洲欧美电影院| 亚洲高清免费在线| 日本欧美肥老太交大片| 国产一区二区美女| 91麻豆精品一区二区三区| 91久久国产综合久久| 3atv一区二区三区| 欧美国产日产图区| 亚洲一区电影777| 久久草av在线| 99国内精品久久| 欧美日韩成人高清| 国产亚洲精品bt天堂精选| 中文字幕不卡在线播放| 一级特黄大欧美久久久| 精品一区二区国语对白| 91美女在线观看| 精品国产欧美一区二区| 欧美国产日韩精品免费观看| 亚洲第一福利一区| 丁香六月久久综合狠狠色| 在线视频观看一区| 精品久久国产字幕高潮| 亚洲精品日韩综合观看成人91| 婷婷综合五月天| 成人小视频在线| 欧美剧情片在线观看| 中文字幕免费不卡| 亚洲图片欧美色图| 99免费精品在线| 亚洲精品一区二区三区在线观看| 日本一区二区三级电影在线观看| 五月婷婷色综合| 99re8在线精品视频免费播放| 精品精品欲导航| 午夜精品123| 99精品久久久久久| 国产欧美日韩激情| 美女爽到高潮91| 欧美伦理电影网| 亚洲激情五月婷婷| 成人中文字幕电影| 久久久99免费| 久久国产精品99精品国产| 91麻豆精品国产91久久久久久久久| 中文字幕永久在线不卡| 福利一区福利二区| 日本一区二区免费在线观看视频 | 亚洲国产精品人人做人人爽| 激情久久久久久久久久久久久久久久| 日本韩国欧美一区| 18成人在线观看| 99久久精品99国产精品| 国产精品久久久久9999吃药| 成人丝袜视频网| 精品免费日韩av| 粉嫩嫩av羞羞动漫久久久 | 一区在线中文字幕| 国产精品一二三四区| 欧美精品一区二区三| 国产自产v一区二区三区c| 精品sm在线观看| 免费美女久久99| 91精品国产综合久久久蜜臀粉嫩 | 日韩欧美视频在线| 美女视频网站久久| 日本一区二区综合亚洲| 成人一区二区三区中文字幕| 中文字幕一区日韩精品欧美| aaa欧美日韩| 亚洲成人一区在线| 日韩欧美综合一区| 国产一区二区三区黄视频 | 久久嫩草精品久久久精品一| 亚洲一本大道在线| 亚洲国产成人一区二区三区| 亚洲午夜久久久久久久久电影网 | 精品国产123| 亚洲国产经典视频| 亚洲成av人影院| 秋霞av亚洲一区二区三| 中文字幕日韩欧美一区二区三区| 欧美最猛性xxxxx直播| 91久久免费观看| 婷婷久久综合九色综合伊人色| 欧美色图第一页| 欧美亚男人的天堂| 欧美三级日韩在线| 中文字幕在线观看不卡视频| 亚洲免费在线看| 欧美激情一区二区三区蜜桃视频| 欧美在线视频你懂得| 丰满少妇久久久久久久| 国产精品成人一区二区三区夜夜夜 | 91免费视频网| 日韩激情av在线| 综合色中文字幕| 久久午夜羞羞影院免费观看| 这里是久久伊人| 欧美一区二区三区四区视频| 国产成人在线视频网站| 国产99精品国产| 一本到三区不卡视频| 91国偷自产一区二区三区观看 | 在线视频综合导航| 欧美自拍丝袜亚洲| 欧美电视剧在线观看完整版| 欧美高清一级片在线| 国产欧美日本一区视频| 麻豆91精品视频| 国产日韩欧美a| 欧美mv日韩mv国产网站app| 色999日韩国产欧美一区二区| 不卡欧美aaaaa| 国产精品自产自拍| 国产一区不卡在线| 中文字幕一区二区三区在线观看 | 蜜桃精品在线观看| 国产69精品一区二区亚洲孕妇 | 亚洲一区二区三区四区在线观看| 爽好久久久欧美精品| 狠狠色丁香久久婷婷综合丁香| 成人免费观看av| 欧美精品成人一区二区三区四区| 在线综合亚洲欧美在线视频| 欧美日韩精品一区视频| 国产精品私人自拍| 国产高清不卡一区二区| 91精品国产综合久久久蜜臀粉嫩 | 亚洲一线二线三线视频| 国产成人精品一区二区三区四区 | 亚洲一区在线观看视频| 一区二区三区精品视频| 亚洲国产精品麻豆| 亚洲欧洲成人精品av97| 88在线观看91蜜桃国自产| 亚洲欧美视频在线观看| 亚洲嫩草精品久久| 亚洲香肠在线观看| 99精品热视频| 亚洲日本va午夜在线电影| 精品一区二区三区免费毛片爱 | 久久www免费人成看片高清| 五月综合激情日本mⅴ| 欧美怡红院视频| 亚洲成人黄色影院| 色婷婷综合久久久中文一区二区 | 欧美国产精品一区二区三区| 国产欧美日韩视频在线观看| 国产精品久久久久婷婷| 日本美女一区二区| 国产大陆亚洲精品国产| 欧美一区在线视频| 亚洲在线视频免费观看| 国模娜娜一区二区三区| 3d动漫精品啪啪一区二区竹菊| 日韩av成人高清| 欧美成人国产一区二区| 国产成a人亚洲精品| 亚洲欧美中日韩| 欧美一区二区三区在线观看 | 日韩av一二三| 亚洲女同一区二区| 精品久久久久久久一区二区蜜臀| 国产精品亚洲一区二区三区在线| 国产日韩av一区二区| 欧美日韩一级二级| 成人a区在线观看| 亚洲妇熟xx妇色黄| 一区二区三区不卡视频在线观看|