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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? getvlc.c

?? MPEG2解編碼程序源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
    {
      Print_Bits(code,3,MVtab0[code].len);
      printf("%d): %d\n",
        Show_Bits(1),Show_Bits(1)?-MVtab0[code].val:MVtab0[code].val);
    }
#endif /* TRACE */

    return Get_Bits1()?-MVtab0[code].val:MVtab0[code].val;
  }

  if (code>=24)
  {
    code >>= 3;
    Flush_Buffer(MVtab1[code].len);

#ifdef TRACE
    if (Trace_Flag)
    {
      Print_Bits(code,6,MVtab1[code].len);
      printf("%d): %d\n",
        Show_Bits(1),Show_Bits(1)?-MVtab1[code].val:MVtab1[code].val);
    }
#endif /* TRACE */

    return Get_Bits1()?-MVtab1[code].val:MVtab1[code].val;
  }

  if ((code-=12)<0)
  {
    if (!Quiet_Flag)
/* HACK */
      printf("Invalid motion_vector code (MBA %d, pic %d)\n", global_MBA, global_pic);
    Fault_Flag=1;
    return 0;
  }

  Flush_Buffer(MVtab2[code].len);

#ifdef TRACE
  if (Trace_Flag)
  {
    Print_Bits(code+12,9,MVtab2[code].len);
    printf("%d): %d\n",
      Show_Bits(1),Show_Bits(1)?-MVtab2[code].val:MVtab2[code].val);
  }
#endif /* TRACE */

  return Get_Bits1() ? -MVtab2[code].val : MVtab2[code].val;
}

/* get differential motion vector (for dual prime prediction) */
int Get_dmvector()
{
#ifdef TRACE
  if (Trace_Flag)
    printf("dmvector (");
#endif /* TRACE */

  if (Get_Bits(1))
  {
#ifdef TRACE
    if (Trace_Flag)
      printf(Show_Bits(1) ? "11): -1\n" : "10): 1\n");
#endif /* TRACE */
    return Get_Bits(1) ? -1 : 1;
  }
  else
  {
#ifdef TRACE
    if (Trace_Flag)
      printf("0): 0\n");
#endif /* TRACE */
    return 0;
  }
}

int Get_coded_block_pattern()
{
  int code;

#ifdef TRACE
  if (Trace_Flag)
    printf("coded_block_pattern_420 (");
#endif /* TRACE */

  if ((code = Show_Bits(9))>=128)
  {
    code >>= 4;
    Flush_Buffer(CBPtab0[code].len);

#ifdef TRACE
    if (Trace_Flag)
    {
      Print_Bits(code,5,CBPtab0[code].len);
      printf("): ");
      Print_Bits(CBPtab0[code].val,6,6);
      printf(" (%d)\n",CBPtab0[code].val);
    }
#endif /* TRACE */

    return CBPtab0[code].val;
  }

  if (code>=8)
  {
    code >>= 1;
    Flush_Buffer(CBPtab1[code].len);

#ifdef TRACE
    if (Trace_Flag)
    {
      Print_Bits(code,8,CBPtab1[code].len);
      printf("): ");
      Print_Bits(CBPtab1[code].val,6,6);
      printf(" (%d)\n",CBPtab1[code].val);
    }
#endif /* TRACE */

    return CBPtab1[code].val;
  }

  if (code<1)
  {
    if (!Quiet_Flag)
      printf("Invalid coded_block_pattern code\n");
    Fault_Flag = 1;
    return 0;
  }

  Flush_Buffer(CBPtab2[code].len);

#ifdef TRACE
  if (Trace_Flag)
  {
    Print_Bits(code,9,CBPtab2[code].len);
    printf("): ");
    Print_Bits(CBPtab2[code].val,6,6);
    printf(" (%d)\n",CBPtab2[code].val);
  }
#endif /* TRACE */

  return CBPtab2[code].val;
}

int Get_macroblock_address_increment()
{
  int code, val;

#ifdef TRACE
  if (Trace_Flag)
    printf("macroblock_address_increment (");
#endif /* TRACE */

  val = 0;

  while ((code = Show_Bits(11))<24)
  {
    if (code!=15) /* if not macroblock_stuffing */
    {
      if (code==8) /* if macroblock_escape */
      {
#ifdef TRACE
        if (Trace_Flag)
          printf("00000001000 ");
#endif /* TRACE */

        val+= 33;
      }
      else
      {
        if (!Quiet_Flag)
          printf("Invalid macroblock_address_increment code\n");

        Fault_Flag = 1;
        return 1;
      }
    }
    else /* macroblock suffing */
    {
#ifdef TRACE
      if (Trace_Flag)
        printf("00000001111 ");
#endif /* TRACE */
    }

    Flush_Buffer(11);
  }

  /* macroblock_address_increment == 1 */
  /* ('1' is in the MSB position of the lookahead) */
  if (code>=1024)
  {
    Flush_Buffer(1);
#ifdef TRACE
    if (Trace_Flag)
      printf("1): %d\n",val+1);
#endif /* TRACE */
    return val + 1;
  }

  /* codes 00010 ... 011xx */
  if (code>=128)
  {
    /* remove leading zeros */
    code >>= 6;
    Flush_Buffer(MBAtab1[code].len);

#ifdef TRACE
    if (Trace_Flag)
    {
      Print_Bits(code,5,MBAtab1[code].len);
      printf("): %d\n",val+MBAtab1[code].val);
    }
#endif /* TRACE */

    
    return val + MBAtab1[code].val;
  }
  
  /* codes 00000011000 ... 0000111xxxx */
  code-= 24; /* remove common base */
  Flush_Buffer(MBAtab2[code].len);

#ifdef TRACE
  if (Trace_Flag)
  {
    Print_Bits(code+24,11,MBAtab2[code].len);
    printf("): %d\n",val+MBAtab2[code].val);
  }
#endif /* TRACE */

  return val + MBAtab2[code].val;
}

/* combined MPEG-1 and MPEG-2 stage. parse VLC and 
   perform dct_diff arithmetic.

   MPEG-1:  ISO/IEC 11172-2 section
   MPEG-2:  ISO/IEC 13818-2 section 7.2.1 
   
   Note: the arithmetic here is presented more elegantly than
   the spec, yet the results, dct_diff, are the same.
*/

int Get_Luma_DC_dct_diff()
{
  int code, size, dct_diff;

#ifdef TRACE
/*
  if (Trace_Flag)
    printf("dct_dc_size_luminance: (");
*/
#endif /* TRACE */

  /* decode length */
  code = Show_Bits(5);

  if (code<31)
  {
    size = DClumtab0[code].val;
    Flush_Buffer(DClumtab0[code].len);
#ifdef TRACE
/*
    if (Trace_Flag)
    {
      Print_Bits(code,5,DClumtab0[code].len);
      printf("): %d",size);
    }
*/
#endif /* TRACE */
  }
  else
  {
    code = Show_Bits(9) - 0x1f0;
    size = DClumtab1[code].val;
    Flush_Buffer(DClumtab1[code].len);

#ifdef TRACE
/*
    if (Trace_Flag)
    {
      Print_Bits(code+0x1f0,9,DClumtab1[code].len);
      printf("): %d",size);
    }
*/
#endif /* TRACE */
  }

#ifdef TRACE
/*
  if (Trace_Flag)
    printf(", dct_dc_differential (");
*/
#endif /* TRACE */

  if (size==0)
    dct_diff = 0;
  else
  {
    dct_diff = Get_Bits(size);
#ifdef TRACE
/*
    if (Trace_Flag)
      Print_Bits(dct_diff,size,size);
*/
#endif /* TRACE */
    if ((dct_diff & (1<<(size-1)))==0)
      dct_diff-= (1<<size) - 1;
  }

#ifdef TRACE
/*
  if (Trace_Flag)
    printf("): %d\n",dct_diff);
*/
#endif /* TRACE */

  return dct_diff;
}


int Get_Chroma_DC_dct_diff()
{
  int code, size, dct_diff;

#ifdef TRACE
/*
  if (Trace_Flag)
    printf("dct_dc_size_chrominance: (");
*/
#endif /* TRACE */

  /* decode length */
  code = Show_Bits(5);

  if (code<31)
  {
    size = DCchromtab0[code].val;
    Flush_Buffer(DCchromtab0[code].len);

#ifdef TRACE
/*
    if (Trace_Flag)
    {
      Print_Bits(code,5,DCchromtab0[code].len);
      printf("): %d",size);
    }
*/
#endif /* TRACE */
  }
  else
  {
    code = Show_Bits(10) - 0x3e0;
    size = DCchromtab1[code].val;
    Flush_Buffer(DCchromtab1[code].len);

#ifdef TRACE
/*
    if (Trace_Flag)
    {
      Print_Bits(code+0x3e0,10,DCchromtab1[code].len);
      printf("): %d",size);
    }
*/
#endif /* TRACE */
  }

#ifdef TRACE
/* 
  if (Trace_Flag)
    printf(", dct_dc_differential (");
*/
#endif /* TRACE */

  if (size==0)
    dct_diff = 0;
  else
  {
    dct_diff = Get_Bits(size);
#ifdef TRACE
/*
    if (Trace_Flag)
      Print_Bits(dct_diff,size,size);
*/
#endif /* TRACE */
    if ((dct_diff & (1<<(size-1)))==0)
      dct_diff-= (1<<size) - 1;
  }

#ifdef TRACE
/*
  if (Trace_Flag)
    printf("): %d\n",dct_diff);
*/
#endif /* TRACE */

  return dct_diff;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品欧美综合在线| 亚洲天天做日日做天天谢日日欢 | 国产麻豆精品在线观看| 中文字幕视频一区二区三区久| 欧美日韩小视频| 国产精品影音先锋| 首页欧美精品中文字幕| 中文字幕一区不卡| 26uuu国产一区二区三区| 欧美日韩精品久久久| 97久久超碰精品国产| 国产一区二区三区四| 奇米色一区二区| 亚洲bdsm女犯bdsm网站| 国产精品国产三级国产专播品爱网| 欧美精品色一区二区三区| 99久久99久久精品国产片果冻| 精品一区二区三区在线观看国产| 亚洲成av人在线观看| 亚洲男人都懂的| 国产精品日产欧美久久久久| 亚洲精品一区在线观看| 日韩一区二区视频| 国产欧美综合在线观看第十页| 欧美人牲a欧美精品| 日本精品一区二区三区高清| 成人av网站在线| 福利一区二区在线| 国产精品白丝jk白祙喷水网站| 美洲天堂一区二卡三卡四卡视频| 亚洲mv在线观看| 亚洲第一成年网| 亚洲大片免费看| 亚洲国产wwwccc36天堂| 亚洲第一久久影院| 亚洲成人av在线电影| 亚洲一区二区三区视频在线播放 | 日韩视频在线永久播放| 欧美一区二区三区婷婷月色| 欧美精品色综合| 欧美精品777| 欧美一区二区三区人| 欧美一区二区精品| 日韩欧美123| 久久中文娱乐网| 国产视频一区在线观看| 国产精品美女一区二区三区| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 久久99热国产| 狠狠色丁香久久婷婷综| 国产成人免费视频网站高清观看视频 | 国产日韩欧美精品在线| 国产校园另类小说区| 国产亚洲一区字幕| 美女视频黄 久久| 国产一区二区主播在线| 国产成人综合自拍| 95精品视频在线| 在线观看成人小视频| 91精品国产综合久久蜜臀| 精品国产百合女同互慰| 国产精品久久夜| 亚洲激情男女视频| 秋霞影院一区二区| 国产福利不卡视频| 91久久精品一区二区三区| 欧美电影在线免费观看| www国产精品av| 亚洲特黄一级片| 午夜精品一区在线观看| 国产永久精品大片wwwapp| 成人三级在线视频| 欧美色视频在线观看| 精品福利一区二区三区| 综合久久久久久| 蜜桃av噜噜一区二区三区小说| 高清在线不卡av| 欧美日韩免费不卡视频一区二区三区| 日韩亚洲欧美在线| 中文字幕中文在线不卡住| 天堂精品中文字幕在线| 成人丝袜视频网| 欧美色电影在线| 国产三级欧美三级日产三级99 | 国产永久精品大片wwwapp| 91浏览器在线视频| 久久综合狠狠综合久久综合88 | 日韩激情视频网站| 成人免费av在线| 在线不卡欧美精品一区二区三区| 国产视频一区二区在线观看| 亚洲成av人在线观看| 成人精品一区二区三区四区| 欧美一区二区三区免费在线看| 综合久久国产九一剧情麻豆| 久久99精品久久久久久动态图| 欧洲中文字幕精品| 国产精品久久久久影院色老大| 日韩av二区在线播放| 91丝袜美女网| 精品国产一区二区在线观看| 亚洲综合在线第一页| av不卡一区二区三区| 精品剧情在线观看| 午夜不卡av在线| 色婷婷精品久久二区二区蜜臂av| 久久综合网色—综合色88| 亚洲国产视频在线| 色婷婷亚洲一区二区三区| 国产亚洲精品aa午夜观看| 美国av一区二区| 欧美日韩高清一区二区不卡| 亚洲欧美国产77777| 成人一区二区三区在线观看| 精品国产污网站| 日本亚洲天堂网| 欧美精品第1页| 亚洲国产成人va在线观看天堂| 色综合久久久久久久久| 五月婷婷综合在线| 色婷婷精品大视频在线蜜桃视频| 中文字幕一区二区三区在线不卡 | 日韩欧美一二三四区| 亚洲成a人片综合在线| 日本道免费精品一区二区三区| 国产精品国产三级国产普通话三级 | 悠悠色在线精品| 波多野结衣中文字幕一区二区三区| 久久午夜羞羞影院免费观看| 美女免费视频一区二区| 日韩一区二区免费在线电影 | aaa亚洲精品| 亚洲欧洲美洲综合色网| 东方欧美亚洲色图在线| 欧美国产日韩亚洲一区| 国产成人免费视频网站| 国产精品蜜臀av| 91日韩一区二区三区| 一区二区三区中文在线| 欧美三级韩国三级日本一级| 亚洲妇女屁股眼交7| 欧美老肥妇做.爰bbww| 丝袜美腿亚洲综合| 欧美成人精品福利| 国内精品嫩模私拍在线| 久久精品人人做人人综合| 国产成人午夜精品影院观看视频 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 欧美电影精品一区二区| 久久精品国产999大香线蕉| 久久―日本道色综合久久| 国产精品白丝av| 亚洲免费在线视频一区 二区| 91国内精品野花午夜精品| 午夜久久久影院| 精品精品国产高清一毛片一天堂| 伦理电影国产精品| 日本一区二区三区久久久久久久久不 | 91黄色小视频| 日本三级亚洲精品| 国产喂奶挤奶一区二区三区| 不卡一区中文字幕| 一区二区三区四区在线免费观看 | 午夜精品一区二区三区电影天堂| 日韩欧美国产麻豆| 成人激情小说网站| 亚洲一二三四区不卡| 欧美成人aa大片| 不卡一区二区三区四区| 亚洲在线视频一区| 精品国产青草久久久久福利| 99久久精品免费看国产| 天天影视网天天综合色在线播放| 欧美精品一区二区不卡 | 日韩精品在线一区二区| 国产aⅴ综合色| 亚洲国产精品自拍| 久久久激情视频| 欧美婷婷六月丁香综合色| 国产一区二区三区美女| 日韩美女视频一区| 美女视频黄免费的久久| 久久先锋资源网| 国产99久久久精品| 国产精品污www在线观看| 欧美无乱码久久久免费午夜一区| 久久精品国产精品亚洲综合| 国产精品久久久久影院老司| 日韩一区国产二区欧美三区| 成人伦理片在线| 麻豆精品久久久| 亚洲一区二区三区在线| 国产性天天综合网| 欧美一区二区三区在线电影 | 一区二区三区av电影| 精品国产电影一区二区| 欧美亚洲愉拍一区二区| 高清av一区二区| 加勒比av一区二区| 偷拍一区二区三区四区|