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

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

?? b_frame.c

?? 網絡MPEG4IP流媒體開發源代碼
?? C
?? 第 1 頁 / 共 4 頁
字號:
                for (j=0;j<4;j++)                {                  j2=j*8;                  for (i=0;i<4;i++)                  {                    i2=i*8;                    fw_pred=UMVPelY_18 (mref[img->fw_multframe_no], jj4+j2, ii4+i2);  // refbuf                    bw_pred=UMVPelY_18 (mref_P, jjj4+j2, iii4+i2);  // refbuf                    img->mpr[i+block_x][j+block_y]=(int)((fw_pred+bw_pred)/2.0+0.5);                  }                }              }              else              {                ii4=(img->pix_x+block_x)*4+tmp_fwMV[0][pic_block_y][pic_block_x+4];                jj4=(img->pix_y+block_y)*4+tmp_fwMV[1][pic_block_y][pic_block_x+4];                iii4=(img->pix_x+block_x)*4+tmp_bwMV[0][pic_block_y][pic_block_x+4];                jjj4=(img->pix_y+block_y)*4+tmp_bwMV[1][pic_block_y][pic_block_x+4];                for (j=0;j<4;j++)                {                  j2=j*4;                  for (i=0;i<4;i++)                  {                    i2=i*4;                    fw_pred=UMVPelY_14 (mref[img->fw_multframe_no], jj4+j2, ii4+i2);  // refbuf                    bw_pred=UMVPelY_14 (mref_P, jjj4+j2, iii4+i2);  // refbuf                    img->mpr[i+block_x][j+block_y]=(int)((fw_pred+bw_pred)/2.0+0.5);                  }                }              }              for (j=0; j < BLOCK_SIZE; j++)              {                for (i=0; i < BLOCK_SIZE; i++)                {                  img->m7[i][j]=                    imgY_org[img->pix_y+block_y+j][img->pix_x+block_x+i]-img->mpr[i+block_x][j+block_y];                }              }              nonzero=dct_luma(block_x,block_y,&coeff_cost);              if (nonzero)              {                currMB->cbp_blk |= 1 << cbp_blk_mask ;            // one bit for every 4x4 block                currMB->cbp     |= cbp_mask;              }            } // block_x          } // block_y          if (coeff_cost > 3)          {            sum_cnt_nonz += coeff_cost;          }          else //discard          {            currMB->cbp     &= (63-cbp_mask);            currMB->cbp_blk &= ~(51 << (mb_y + (mb_x>>2) )) ;            for (i=mb_x; i < mb_x+BLOCK_SIZE*2; i++)            {              for (j=mb_y; j < mb_y+BLOCK_SIZE*2; j++)              {                imgY[img->pix_y+j][img->pix_x+i]=img->mpr[i][j];              }            }          }        } // mb_x      } // mb_y      if (sum_cnt_nonz <= 5 )      {        currMB->cbp     &= 0xfffff0 ;        currMB->cbp_blk &= 0xff0000 ;        for (i=0; i < MB_BLOCK_SIZE; i++)        {          for (j=0; j < MB_BLOCK_SIZE; j++)          {            imgY[img->pix_y+j][img->pix_x+i]=img->mpr[i][j];          }        }      }      break;    case B_Direct :      currMB->cbp=0;      currMB->cbp_blk=0;      sum_cnt_nonz=0;      for (mb_y=0; mb_y < MB_BLOCK_SIZE; mb_y += BLOCK_SIZE*2)      {        for (mb_x=0; mb_x < MB_BLOCK_SIZE; mb_x += BLOCK_SIZE*2)        {          cbp_mask=(int)pow(2,(mb_x/8+mb_y/4));          coeff_cost=0;          for (block_y=mb_y; block_y < mb_y+BLOCK_SIZE*2; block_y += BLOCK_SIZE)          {            pic_pix_y=img->pix_y+block_y;            pic_block_y=pic_pix_y/BLOCK_SIZE;            for (block_x=mb_x; block_x < mb_x+BLOCK_SIZE*2; block_x += BLOCK_SIZE)            {              cbp_blk_mask = (block_x>>2)+ block_y ;              pic_pix_x=img->pix_x+block_x;              pic_block_x=pic_pix_x/BLOCK_SIZE;              img->ipredmode[pic_block_x+1][pic_block_y+1]=0;              if(input->mv_res)              {                ii4 =(img->pix_x+block_x)*8+dfMV[0][pic_block_y][pic_block_x+4];                jj4 =(img->pix_y+block_y)*8+dfMV[1][pic_block_y][pic_block_x+4];                iii4=(img->pix_x+block_x)*8+dbMV[0][pic_block_y][pic_block_x+4];                jjj4=(img->pix_y+block_y)*8+dbMV[1][pic_block_y][pic_block_x+4];                // next P is intra mode                if(refFrArr[pic_block_y][pic_block_x]==-1)                  ref_inx=(img->number-1)%img->buf_cycle;                // next P is skip or inter mode                else                  ref_inx=(img->number-refFrArr[pic_block_y][pic_block_x]-1)%img->buf_cycle;                for (j=0;j<4;j++)                {                  j2=j*8;                  for (i=0;i<4;i++)                  {                    i2=i*8;                    df_pred=UMVPelY_18 (mref[ref_inx], jj4+j2, ii4+i2);                    db_pred=UMVPelY_18 (mref_P, jjj4+j2, iii4+i2);                    img->mpr[i+block_x][j+block_y]=(int)((df_pred+db_pred)/2.0+0.5);                  }                }              }              else              {                ii4 =(img->pix_x+block_x)*4+dfMV[0][pic_block_y][pic_block_x+4];                jj4 =(img->pix_y+block_y)*4+dfMV[1][pic_block_y][pic_block_x+4];                iii4=(img->pix_x+block_x)*4+dbMV[0][pic_block_y][pic_block_x+4];                jjj4=(img->pix_y+block_y)*4+dbMV[1][pic_block_y][pic_block_x+4];                // next P is intra mode                if(refFrArr[pic_block_y][pic_block_x]==-1)                  ref_inx=(img->number-1)%img->buf_cycle;                // next P is skip or inter mode                else                  ref_inx=(img->number-refFrArr[pic_block_y][pic_block_x]-1)%img->buf_cycle;                for (j=0;j<4;j++)                {                  j2=j*4;                  for (i=0;i<4;i++)                  {                    i2=i*4;                    df_pred=UMVPelY_14 (mref[ref_inx], jj4+j2, ii4+i2);                    db_pred=UMVPelY_14 (mref_P, jjj4+j2, iii4+i2);                    img->mpr[i+block_x][j+block_y]=(int)((df_pred+db_pred)/2.0+0.5);                  }                }              }              // LG : direct residual coding              for (j=0; j < BLOCK_SIZE; j++)              {                for (i=0; i < BLOCK_SIZE; i++)                {                  img->m7[i][j]=                    imgY_org[img->pix_y+block_y+j][img->pix_x+block_x+i]-img->mpr[i+block_x][j+block_y];                }              }              nonzero=dct_luma(block_x,block_y,&coeff_cost);              if (nonzero)              {                currMB->cbp_blk |= 1 << cbp_blk_mask ;            // one bit for every 4x4 block                currMB->cbp     |= cbp_mask;              }            } // block_x          } // block_y          // LG : direct residual coding          if (coeff_cost > 3)          {            sum_cnt_nonz += coeff_cost;          }          else //discard          {            currMB->cbp     &= (63-cbp_mask);            currMB->cbp_blk &= ~(51 << (mb_y + (mb_x>>2) )) ;            for (i=mb_x; i < mb_x+BLOCK_SIZE*2; i++)            {              for (j=mb_y; j < mb_y+BLOCK_SIZE*2; j++)              {                imgY[img->pix_y+j][img->pix_x+i]=img->mpr[i][j];              }            }          }        } // mb_x      } // mb_y      // LG : direct residual coding      if (sum_cnt_nonz <= 5 )      {        currMB->cbp     &= 0xfffff0 ;        currMB->cbp_blk &= 0xff0000 ;        for (i=0; i < MB_BLOCK_SIZE; i++)        {          for (j=0; j < MB_BLOCK_SIZE; j++)          {            imgY[img->pix_y+j][img->pix_x+i]=img->mpr[i][j];          }        }      }      break;    default:      break;  } // switch()}/*! ************************************************************************ * \brief *    Performs DCT, quantization, run/level pre-coding and IDCT *    for the chrominance of a B-frame macroblock; *    current cbp and cr_cbp are affected ************************************************************************ */void ChromaCoding_B(int *cr_cbp){  int i, j;  int uv, ii,jj,ii0,jj0,ii1,jj1,if1,jf1,if0,jf0,f1,f2,f3,f4;  int pic_block_y, pic_block_x, ref_inx, fw_pred, bw_pred;  Macroblock *currMB = &img->mb_data[img->current_mb_nr];  if(input->mv_res)  {    f1=16;    f2=15;  }  else  {    f1=8;    f2=7;  }  f3=f1*f1;  f4=f3/2;  *cr_cbp=0;  for (uv=0; uv < 2; uv++)  {    if (img->imod == INTRA_MB_OLD || img->imod == INTRA_MB_NEW)    {      intrapred_chroma(img->pix_c_x,img->pix_c_y,uv);    }    else if(img->imod == B_Forward)    {      for (j=0; j < MB_BLOCK_SIZE/2; j++)      {        pic_block_y=(img->pix_c_y+j)/2;        for (i=0; i < MB_BLOCK_SIZE/2; i++)        {          pic_block_x=(img->pix_c_x+i)/2;          ii=(img->pix_c_x+i)*f1+tmp_fwMV[0][pic_block_y][pic_block_x+4];          jj=(img->pix_c_y+j)*f1+tmp_fwMV[1][pic_block_y][pic_block_x+4];          ii0= max (0, min (img->width_cr-1, ii/f1));          jj0= max (0, min (img->height_cr-1, jj/f1));          ii1= max (0, min (img->width_cr-1, (ii+f2)/f1));          jj1= max (0, min (img->height_cr-1, (jj+f2)/f1));          if1=(ii & f2);          jf1=(jj & f2);          if0=f1-if1;          jf0=f1-jf1;          img->mpr[i][j]=(if0*jf0*mcef[img->fw_multframe_no][uv][jj0][ii0]+                  if1*jf0*mcef[img->fw_multframe_no][uv][jj0][ii1]+                  if0*jf1*mcef[img->fw_multframe_no][uv][jj1][ii0]+                  if1*jf1*mcef[img->fw_multframe_no][uv][jj1][ii1]+f4)/f3;          img->m7[i][j]=imgUV_org[uv][img->pix_c_y+j][img->pix_c_x+i]-img->mpr[i][j];        }      }    }    else if(img->imod == B_Backward)    {      for (j=0; j < MB_BLOCK_SIZE/2; j++)      {        pic_block_y=(img->pix_c_y+j)/2;        for (i=0; i < MB_BLOCK_SIZE/2; i++)        {          pic_block_x=(img->pix_c_x+i)/2;          ii=(img->pix_c_x+i)*f1+tmp_bwMV[0][pic_block_y][pic_block_x+4];          jj=(img->pix_c_y+j)*f1+tmp_bwMV[1][pic_block_y][pic_block_x+4];          ii0= max (0, min (img->width_cr-1, ii/f1));          jj0= max (0, min (img->height_cr-1, jj/f1));          ii1= max (0, min (img->width_cr-1, (ii+f2)/f1));          jj1= max (0, min (img->height_cr-1, (jj+f2)/f1));          if1=(ii & f2);          jf1=(jj & f2);          if0=f1-if1;          jf0=f1-jf1;          img->mpr[i][j]=(if0*jf0*mcef_P[uv][jj0][ii0]+if1*jf0*mcef_P[uv][jj0][ii1]+                    if0*jf1*mcef_P[uv][jj1][ii0]+if1*jf1*mcef_P[uv][jj1][ii1]+f4)/f3;          img->m7[i][j]=imgUV_org[uv][img->pix_c_y+j][img->pix_c_x+i]-img->mpr[i][j];        }      }    }    else if(img->imod == B_Bidirect)    {      for (j=0; j < MB_BLOCK_SIZE/2; j++)      {        pic_block_y=(img->pix_c_y+j)/2;        for (i=0; i < MB_BLOCK_SIZE/2; i++)        {          pic_block_x=(img->pix_c_x+i)/2;          ii=(img->pix_c_x+i)*f1+tmp_fwMV[0][pic_block_y][pic_block_x+4];          jj=(img->pix_c_y+j)*f1+tmp_fwMV[1][pic_block_y][pic_block_x+4];          ii0= max (0, min (img->width_cr-1, ii/f1));          jj0= max (0, min (img->height_cr-1, jj/f1));          ii1= max (0, min (img->width_cr-1, (ii+f2)/f1));          jj1= max (0, min (img->height_cr-1, (jj+f2)/f1));          if1=(ii & f2);          jf1=(jj & f2);          if0=f1-if1;          jf0=f1-jf1;          fw_pred=(if0*jf0*mcef[img->fw_multframe_no][uv][jj0][ii0]+               if1*jf0*mcef[img->fw_multframe_no][uv][jj0][ii1]+               if0*jf1*mcef[img->fw_multframe_no][uv][jj1][ii0]+               if1*jf1*mcef[img->fw_multframe_no][uv][jj1][ii1]+f4)/f3;          ii=(img->pix_c_x+i)*f1+tmp_bwMV[0][pic_block_y][pic_block_x+4];          jj=(img->pix_c_y+j)*f1+tmp_bwMV[1][pic_block_y][pic_block_x+4];          ii0= max (0, min (img->width_cr-1, ii/f1));          jj0= max (0, min (img->height_cr-1, jj/f1));          ii1= max (0, min (img->width_cr-1, (ii+f2)/f1));          jj1= max (0, min (img->height_cr-1, (jj+f2)/f1));          if1=(ii & f2);          jf1=(jj & f2);          if0=f1-if1;          jf0=f1-jf1;          bw_pred=(if0*jf0*mcef_P[uv][jj0][ii0]+if1*jf0*mcef_P[uv][jj0][ii1]+               if0*jf1*mcef_P[uv][jj1][ii0]+if1*jf1*mcef_P[uv][jj1][ii1]+f4)/f3;          img->mpr[i][j]=(int)((fw_pred+bw_pred)/2.0+0.5);          img->m7[i][j]=imgUV_org[uv][img->pix_c_y+j][img->pix_c_x+i]-img->mpr[i][j];        }      }    }    else // img->imod == B_Direct    {      for (j=0; j < MB_BLOCK_SIZE/2; j++)      {        pic_block_y=(img->pix_c_y+j)/2;        for (i=0; i < MB_BLOCK_SIZE/2; i++)        {          pic_block_x=(img->pix_c_x+i)/2;          ii=(img->pix_c_x+i)*f1+dfMV[0][pic_block_y][pic_block_x+4];          jj=(img->pix_c_y+j)*f1+dfMV[1][pic_block_y][pic_block_x+4];          ii0= max (0, min (img->width_cr-1, ii/f1));          jj0= max (0, min (img->height_cr-1, jj/f1));          ii1= max (0, min (img->width_cr-1, (ii+f2)/f1));          jj1= max (0, min (img->height_cr-1, (jj+f2)/f1));          if1=(ii & f2);          jf1=(jj & f2);          if0=f1-if1;          jf0=f1-jf1;          // next P is intra mode          if(refFrArr[pic_block_y][pic_block_x]==-1)            ref_inx=(img->number-1)%img->buf_cycle;          // next P is skip or inter mode          else            ref_inx=(img->number-refFrArr[pic_block_y][pic_block_x]-1)%img->buf_cycle;          fw_pred=(if0*jf0*mcef[ref_inx][uv][jj0][ii0]+               if1*jf0*mcef[ref_inx][uv][jj0][ii1]+               if0*jf1*mcef[ref_inx][uv][jj1][ii0]+               if1*jf1*mcef[ref_inx][uv][jj1][ii1]+f4)/f3;          ii=(img->pix_c_x+i)*f1+dbMV[0][pic_block_y][pic_block_x+4];

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡的av在线播放| 国产精品一区二区三区四区| 国产精品嫩草99a| 中文字幕欧美区| 欧美激情一区二区在线| 久久久久99精品国产片| 久久精品人人做| 国产欧美一区二区精品久导航 | 国产精品免费久久| 欧美激情资源网| 国产免费久久精品| 国产午夜一区二区三区| ...xxx性欧美| 亚洲第一综合色| 欧美aa在线视频| 国产福利一区二区三区视频在线| 丁香六月综合激情| 91亚洲精品乱码久久久久久蜜桃| 91电影在线观看| 8x福利精品第一导航| 日韩免费高清电影| 国产精品免费网站在线观看| 亚洲尤物视频在线| 久久99最新地址| 成人丝袜高跟foot| 欧美久久高跟鞋激| 26uuu色噜噜精品一区二区| 亚洲国产精品激情在线观看| 亚洲欧美一区二区久久 | 欧美本精品男人aⅴ天堂| 国产午夜精品一区二区三区视频| 亚洲另类在线视频| 美女在线视频一区| 成人avav在线| 制服丝袜亚洲色图| 国产精品人人做人人爽人人添| 亚洲大型综合色站| 国产99久久精品| 日韩一区二区视频| 夜夜夜精品看看| 国产精品亚洲午夜一区二区三区 | 国产清纯在线一区二区www| 亚洲人成电影网站色mp4| 久久 天天综合| 欧美性受极品xxxx喷水| 国产日产欧美一区二区三区| 天堂精品中文字幕在线| 国产99精品国产| 欧美v亚洲v综合ⅴ国产v| 亚洲综合在线视频| 国产精品一区二区你懂的| 欧美裸体bbwbbwbbw| 亚洲日本在线天堂| 国产成人精品午夜视频免费| 日韩亚洲欧美一区二区三区| 亚洲麻豆国产自偷在线| 成人精品视频一区二区三区| 欧美变态tickle挠乳网站| 午夜国产精品一区| 在线免费观看视频一区| 亚洲欧美一区二区在线观看| 国产精品一区二区在线看| 欧美大黄免费观看| 日韩电影一区二区三区| 欧美日韩亚洲另类| 曰韩精品一区二区| 91免费观看视频在线| 中文字幕一区二区三区精华液| 国产综合久久久久久鬼色| 亚洲精品一区二区三区在线观看| 美国一区二区三区在线播放| 中文字幕av一区二区三区高| 久久久美女毛片 | 色诱亚洲精品久久久久久| 久久精品欧美日韩| 国产老妇另类xxxxx| 精品黑人一区二区三区久久| 免费精品视频在线| 日韩欧美不卡在线观看视频| 蜜桃av一区二区| 精品第一国产综合精品aⅴ| 美脚の诱脚舐め脚责91 | 欧美一三区三区四区免费在线看| 亚洲免费三区一区二区| 色综合久久久久久久久久久| 一区二区三区欧美在线观看| 欧美中文字幕不卡| 首页国产丝袜综合| 2019国产精品| 成人国产精品免费网站| 亚洲欧美日韩一区| 欧美美女激情18p| 国产在线播放一区| 中文字幕亚洲在| 欧美三级视频在线观看| 免费成人性网站| 中文字幕乱码亚洲精品一区| 色综合久久久久综合体| 日本大胆欧美人术艺术动态| www国产成人| 99国内精品久久| 日本va欧美va欧美va精品| 欧美va亚洲va香蕉在线| 成年人午夜久久久| 日韩精品乱码免费| 国产精品毛片久久久久久| 欧美三级在线播放| 国产成人精品免费看| 亚洲午夜久久久久久久久电影网| 91精品中文字幕一区二区三区| 国产麻豆成人传媒免费观看| 亚洲男同性视频| 精品美女一区二区| 欧美亚洲自拍偷拍| 国内精品国产三级国产a久久 | 午夜影院在线观看欧美| 国产亚洲综合在线| 欧美一区二区三区的| 成人理论电影网| 精品一区二区三区免费观看| 亚洲精品乱码久久久久| 精品国产91乱码一区二区三区 | 亚洲欧美日韩成人高清在线一区| 91精品欧美综合在线观看最新 | 日韩欧美在线网站| 色婷婷av久久久久久久| 激情久久久久久久久久久久久久久久| 国产精品久久久久久久岛一牛影视| 91精品国产综合久久婷婷香蕉| 91在线视频播放| 成人小视频在线| 国产一区二区0| 毛片av中文字幕一区二区| 亚洲成人午夜电影| 亚洲精品老司机| 亚洲欧美另类久久久精品| 国产欧美一区二区精品性色| 欧美电影免费观看高清完整版在| 欧美日韩大陆一区二区| 日本韩国一区二区三区| 成人免费视频视频在线观看免费| 极品少妇一区二区| 日韩精品乱码av一区二区| 亚洲成人av资源| 一区二区三区av电影| 综合久久国产九一剧情麻豆| 欧美国产日本韩| 日本一二三四高清不卡| 国产欧美日韩视频一区二区| 久久夜色精品国产噜噜av| 久久久精品2019中文字幕之3| 久久综合五月天婷婷伊人| 精品国产凹凸成av人导航| 精品毛片乱码1区2区3区 | 国产精品高潮呻吟| 亚洲国产激情av| 中文字幕制服丝袜一区二区三区 | 午夜免费久久看| 日日夜夜免费精品视频| 日韩国产在线一| 久久se精品一区精品二区| 国产一区二区三区| 国产成人免费视频网站 | 99精品视频在线观看| 91麻豆免费观看| 欧洲精品一区二区三区在线观看| 欧美性大战xxxxx久久久| 欧美久久久久久蜜桃| 精品福利av导航| 国产精品乱人伦| 亚洲在线一区二区三区| 日韩制服丝袜av| 国产精品一二三四区| 色欧美88888久久久久久影院| 欧美日韩综合一区| 精品国产欧美一区二区| 欧美韩国一区二区| 亚洲一区二区三区爽爽爽爽爽| 日韩av在线发布| 国产成人在线视频播放| 色诱视频网站一区| 日韩视频免费观看高清在线视频| 国产亚洲精品aa| 亚洲成人一区二区在线观看| 韩国av一区二区三区在线观看| 99精品欧美一区二区三区小说| 制服.丝袜.亚洲.中文.综合| 国产天堂亚洲国产碰碰| 一区二区三区在线视频观看| 久久精品99国产精品| 色诱视频网站一区| 久久日韩精品一区二区五区| 亚洲女厕所小便bbb| 国产在线视视频有精品| 在线观看91精品国产入口| 亚洲精品一区二区三区福利| 亚洲综合成人在线视频| 久久精品国产999大香线蕉| 欧洲生活片亚洲生活在线观看| 久久久亚洲欧洲日产国码αv|