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

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

?? b_frame.c

?? TML的參考源代碼
?? C
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
        if (intrapred(img,ioff,joff,i4,j4)==SEARCH_SYNC)  // make 4x4 prediction block mpr from given prediction img->mb_mode
        return SEARCH_SYNC;                   // bit error
      }

      // //////////////////////////////////
      // Forward MC using img->fw_MV
      // //////////////////////////////////
      else if(img->imod==B_Forward)
      {
        vec1_x = i4*4*mv_mul + img->fw_mv[i4+BLOCK_SIZE][j4][0];
        vec1_y = j4*4*mv_mul + img->fw_mv[i4+BLOCK_SIZE][j4][1];

        get_block(ref_frame_fw,vec1_x,vec1_y,img,tmp_block);

        for(ii=0;ii<BLOCK_SIZE;ii++)
          for(jj=0;jj<BLOCK_SIZE;jj++)
            img->mpr[ii+ioff][jj+joff] = tmp_block[ii][jj];
      }

      // //////////////////////////////////
      // Backward MC using img->bw_MV
      // //////////////////////////////////
      else if(img->imod==B_Backward)
      {
        vec1_x = i4*4*mv_mul + img->bw_mv[i4+BLOCK_SIZE][j4][0];
        vec1_y = j4*4*mv_mul + img->bw_mv[i4+BLOCK_SIZE][j4][1];

        get_block(ref_frame_bw,vec1_x,vec1_y,img,tmp_blockbw);

        for(ii=0;ii<BLOCK_SIZE;ii++)
          for(jj=0;jj<BLOCK_SIZE;jj++)
            img->mpr[ii+ioff][jj+joff] = tmp_blockbw[ii][jj];
      }

      // //////////////////////////////////
      // Bidirect MC using img->fw_MV, bw_MV
      // //////////////////////////////////
      else if(img->imod==B_Bidirect)
      {
        vec2_x=i4*4*mv_mul;
        vec1_x=vec2_x+img->fw_mv[i4+BLOCK_SIZE][j4][0];
        vec1_xx=vec2_x+img->bw_mv[i4+BLOCK_SIZE][j4][0];
        vec2_y=j4*4*mv_mul;
        vec1_y=vec2_y+img->fw_mv[i4+BLOCK_SIZE][j4][1];
        vec1_yy=vec2_y+img->bw_mv[i4+BLOCK_SIZE][j4][1];

        get_block(ref_frame_fw,vec1_x,vec1_y,img,tmp_block);
        get_block(ref_frame_bw,vec1_xx,vec1_yy,img,tmp_blockbw);

        for(ii=0;ii<BLOCK_SIZE;ii++)
          for(jj=0;jj<BLOCK_SIZE;jj++)
            img->mpr[ii+ioff][jj+joff] = (tmp_block[ii][jj]+tmp_blockbw[ii][jj]+1)/2;
      }

      // //////////////////////////////////
      // Direct MC using img->mv
      // //////////////////////////////////
      else if(img->imod==B_Direct)
      {
        // next P is intra mode
        if(refFrArr[j4][i4]==-1)
        {
          for(hv=0; hv<2; hv++)
          {
            img->dfMV[i4+BLOCK_SIZE][j4][hv]=img->dbMV[i4+BLOCK_SIZE][j4][hv]=0;
          }
          ref_frame = 1;
        }
        // next P is skip or inter mode
        else
        {
#ifdef _ADAPT_LAST_GROUP_
          refP_tr = last_P_no[refFrArr[j4][i4]];
#else
          refP_tr = nextP_tr-((refFrArr[j4][i4]+1)*P_interval);
#endif
          TRb = img->tr-refP_tr;
          TRp = nextP_tr-refP_tr;

          img->dfMV[i4+BLOCK_SIZE][j4][0]=TRb*img->mv[i4+BLOCK_SIZE][j4][0]/TRp;
          img->dfMV[i4+BLOCK_SIZE][j4][1]=TRb*img->mv[i4+BLOCK_SIZE][j4][1]/TRp;
          img->dbMV[i4+BLOCK_SIZE][j4][0]=(TRb-TRp)*img->mv[i4+BLOCK_SIZE][j4][0]/TRp;
          img->dbMV[i4+BLOCK_SIZE][j4][1]=(TRb-TRp)*img->mv[i4+BLOCK_SIZE][j4][1]/TRp;
          ref_frame=1 + refFrArr[j4][i4];
        }

        vec2_x=i4*4*mv_mul;
        vec1_x=vec2_x+img->dfMV[i4+BLOCK_SIZE][j4][0];
        vec1_xx=vec2_x+img->dbMV[i4+BLOCK_SIZE][j4][0];
        vec2_y=j4*4*mv_mul;
        vec1_y=vec2_y+img->dfMV[i4+BLOCK_SIZE][j4][1];
        vec1_yy=vec2_y+img->dbMV[i4+BLOCK_SIZE][j4][1];

        get_block(ref_frame,vec1_x,vec1_y,img,tmp_block);
        get_block(ref_frame_bw,vec1_xx,vec1_yy,img,tmp_blockbw);

        for(ii=0;ii<BLOCK_SIZE;ii++)
          for(jj=0;jj<BLOCK_SIZE;jj++)
            img->mpr[ii+ioff][jj+joff] = (tmp_block[ii][jj]+tmp_blockbw[ii][jj]+1)/2;
      }

      itrans(img,ioff,joff,i,j);      // use DCT transform and make 4x4 block m7 from prediction block mpr

      for(ii=0;ii<BLOCK_SIZE;ii++)
      {
        for(jj=0;jj<BLOCK_SIZE;jj++)
        {
          imgY[j4*BLOCK_SIZE+jj][i4*BLOCK_SIZE+ii]=img->m7[ii][jj]; // contruct picture from 4x4 blocks
        }
      }
    }
  }




#if POS
  imgY[img->block_y*BLOCK_SIZE][img->block_x*BLOCK_SIZE]= color;
#endif

  /**********************************
   *    chroma                      *
   *********************************/
  for(uv=0;uv<2;uv++)
  {
    if (img->imod==INTRA_MB_OLD || img->imod==INTRA_MB_NEW)// intra mode
    {
      js0=0;
      js1=0;
      js2=0;
      js3=0;
      for(i=0;i<4;i++)
      {
        if(mb_available_up)
        {
          js0=js0+imgUV[uv][img->pix_c_y-1][img->pix_c_x+i];
          js1=js1+imgUV[uv][img->pix_c_y-1][img->pix_c_x+i+4];
        }
        if(mb_available_left)
        {
          js2=js2+imgUV[uv][img->pix_c_y+i][img->pix_c_x-1];
          js3=js3+imgUV[uv][img->pix_c_y+i+4][img->pix_c_x-1];
        }
      }
      if(mb_available_up && mb_available_left)
      {
        js[0][0]=(js0+js2+4)/8;
        js[1][0]=(js1+2)/4;
        js[0][1]=(js3+2)/4;
        js[1][1]=(js1+js3+4)/8;
      }
      if(mb_available_up && !mb_available_left)
      {
        js[0][0]=(js0+2)/4;
        js[1][0]=(js1+2)/4;
        js[0][1]=(js0+2)/4;
        js[1][1]=(js1+2)/4;
      }
      if(mb_available_left && !mb_available_up)
      {
        js[0][0]=(js2+2)/4;
        js[1][0]=(js2+2)/4;
        js[0][1]=(js3+2)/4;
        js[1][1]=(js3+2)/4;
      }
      if(!mb_available_up && !mb_available_left)
      {
        js[0][0]=128;
        js[1][0]=128;
        js[0][1]=128;
        js[1][1]=128;
      }
    }

    for (j=4;j<6;j++)
    {
      joff=(j-4)*4;
      j4=img->pix_c_y+joff;
      for(i=0;i<2;i++)
      {
        ioff=i*4;
        i4=img->pix_c_x+ioff;
        // make pred
        if(img->imod==INTRA_MB_OLD|| img->imod==INTRA_MB_NEW)// intra
        {
          for(ii=0;ii<4;ii++)
            for(jj=0;jj<4;jj++)
            {
              img->mpr[ii+ioff][jj+joff]=js[i][j-4];
            }
        }
        // //////////////////////////////////
        // Forward Reconstruction
        // //////////////////////////////////
        else if(img->imod==B_Forward)
        {
          for(jj=0;jj<4;jj++)
          {
            jf=(j4+jj)/2;
            for(ii=0;ii<4;ii++)
            {
              if1=(i4+ii)/2;
              i1=(img->pix_c_x+ii+ioff)*f1+img->fw_mv[if1+4][jf][0];
              j1=(img->pix_c_y+jj+joff)*f1+img->fw_mv[if1+4][jf][1];

              ii0=max (0, min (i1/f1, img->width_cr-1));
              jj0=max (0, min (j1/f1, img->height_cr-1));
              ii1=max (0, min ((i1+f2)/f1, img->width_cr-1));
              jj1=max (0, min ((j1+f2)/f1, img->height_cr-1));

              if1=(i1 & f2);
              jf1=(j1 & f2);
              if0=f1-if1;
              jf0=f1-jf1;
              img->mpr[ii+ioff][jj+joff]=(if0*jf0*mcef[ref_frame_fw][uv][jj0][ii0]+
                                          if1*jf0*mcef[ref_frame_fw][uv][jj0][ii1]+
                                          if0*jf1*mcef[ref_frame_fw][uv][jj1][ii0]+
                                          if1*jf1*mcef[ref_frame_fw][uv][jj1][ii1]+f4)/f3;
            }
          }
        }
        // //////////////////////////////////
        // Backward Reconstruction
        // //////////////////////////////////
        else if(img->imod==B_Backward)
        {
          for(jj=0;jj<4;jj++)
          {
            jf=(j4+jj)/2;
            for(ii=0;ii<4;ii++)
            {
              if1=(i4+ii)/2;
              i1=(img->pix_c_x+ii+ioff)*f1+img->bw_mv[if1+4][jf][0];
              j1=(img->pix_c_y+jj+joff)*f1+img->bw_mv[if1+4][jf][1];

              ii0=max (0, min (i1/f1, img->width_cr-1));
              jj0=max (0, min (j1/f1, img->height_cr-1));
              ii1=max (0, min ((i1+f2)/f1, img->width_cr-1));
              jj1=max (0, min ((j1+f2)/f1, img->height_cr-1));

              if1=(i1 & f2);
              jf1=(j1 & f2);
              if0=f1-if1;
              jf0=f1-jf1;

              img->mpr[ii+ioff][jj+joff]=(if0*jf0*mcef[ref_frame_bw][uv][jj0][ii0]+
                                          if1*jf0*mcef[ref_frame_bw][uv][jj0][ii1]+
                                          if0*jf1*mcef[ref_frame_bw][uv][jj1][ii0]+
                                          if1*jf1*mcef[ref_frame_bw][uv][jj1][ii1]+f4)/f3;
            }
          }
        }
        // //////////////////////////////////
        // Bidirect Reconstruction
        // //////////////////////////////////
        else if(img->imod==B_Bidirect)
        {
          for(jj=0;jj<4;jj++)
          {
            jf=(j4+jj)/2;
            for(ii=0;ii<4;ii++)
            {
              ifx=(i4+ii)/2;
              i1=(img->pix_c_x+ii+ioff)*f1+img->fw_mv[ifx+4][jf][0];
              j1=(img->pix_c_y+jj+joff)*f1+img->fw_mv[ifx+4][jf][1];

              ii0=max (0, min (i1/f1, img->width_cr-1));
              jj0=max (0, min (j1/f1, img->height_cr-1));
              ii1=max (0, min ((i1+f2)/f1, img->width_cr-1));
              jj1=max (0, min ((j1+f2)/f1, img->height_cr-1));
              if1=(i1 & f2);
              jf1=(j1 & f2);
              if0=f1-if1;
              jf0=f1-jf1;

              fw_pred=(if0*jf0*mcef[ref_frame_fw][uv][jj0][ii0]+
                       if1*jf0*mcef[ref_frame_fw][uv][jj0][ii1]+
                       if0*jf1*mcef[ref_frame_fw][uv][jj1][ii0]+
                       if1*jf1*mcef[ref_frame_fw][uv][jj1][ii1]+f4)/f3;

              i1=(img->pix_c_x+ii+ioff)*f1+img->bw_mv[ifx+4][jf][0];
              j1=(img->pix_c_y+jj+joff)*f1+img->bw_mv[ifx+4][jf][1];

              ii0=max (0, min (i1/f1, img->width_cr-1));
              jj0=max (0, min (j1/f1, img->height_cr-1));
              ii1=max (0, min ((i1+f2)/f1, img->width_cr-1));
              jj1=max (0, min ((j1+f2)/f1, img->height_cr-1));
              if1=(i1 & f2);
              jf1=(j1 & f2);
              if0=f1-if1;
              jf0=f1-jf1;
              bw_pred=(if0*jf0*mcef[ref_frame_bw][uv][jj0][ii0]+
                       if1*jf0*mcef[ref_frame_bw][uv][jj0][ii1]+
                       if0*jf1*mcef[ref_frame_bw][uv][jj1][ii0]+
                       if1*jf1*mcef[ref_frame_bw][uv][jj1][ii1]+f4)/f3;

              img->mpr[ii+ioff][jj+joff]=(int)((fw_pred+bw_pred)/2.+.5);
            }
          }
        }
        // //////////////////////////////////
        // Direct Reconstruction
        // //////////////////////////////////
        else if(img->imod==B_Direct)
        {
          for(jj=0;jj<4;jj++)
          {
            jf=(j4+jj)/2;
            for(ii=0;ii<4;ii++)
            {
              ifx=(i4+ii)/2;

              i1=(img->pix_c_x+ii+ioff)*f1+img->dfMV[ifx+4][jf][0];
              j1=(img->pix_c_y+jj+joff)*f1+img->dfMV[ifx+4][jf][1];

              ii0=max (0, min (i1/f1, img->width_cr-1));
              jj0=max (0, min (j1/f1, img->height_cr-1));
              ii1=max (0, min ((i1+f2)/f1, img->width_cr-1));
              jj1=max (0, min ((j1+f2)/f1, img->height_cr-1));

              if1=(i1 & f2);
              jf1=(j1 & f2);
              if0=f1-if1;
              jf0=f1-jf1;

              if(refFrArr[jf][ifx]==-1)
                ref_frame=1;
              else
                ref_frame=1 + refFrArr[jf][ifx];

              fw_pred=(if0*jf0*mcef[ref_frame][uv][jj0][ii0]+
                       if1*jf0*mcef[ref_frame][uv][jj0][ii1]+
                       if0*jf1*mcef[ref_frame][uv][jj1][ii0]+
                       if1*jf1*mcef[ref_frame][uv][jj1][ii1]+f4)/f3;


              i1=(img->pix_c_x+ii+ioff)*f1+img->dbMV[ifx+4][jf][0];
              j1=(img->pix_c_y+jj+joff)*f1+img->dbMV[ifx+4][jf][1];

              ii0=max (0, min (i1/f1, img->width_cr-1));
              jj0=max (0, min (j1/f1, img->height_cr-1));
              ii1=max (0, min ((i1+f2)/f1, img->width_cr-1));
              jj1=max (0, min ((j1+f2)/f1, img->height_cr-1));

              if1=(i1 & f2);
              jf1=(j1 & f2);
              if0=f1-if1;
              jf0=f1-jf1;

              bw_pred=(if0*jf0*mcef[ref_frame_bw][uv][jj0][ii0]+
                       if1*jf0*mcef[ref_frame_bw][uv][jj0][ii1]+
                       if0*jf1*mcef[ref_frame_bw][uv][jj1][ii0]+
                       if1*jf1*mcef[ref_frame_bw][uv][jj1][ii1]+f4)/f3;
              // LG : direct residual coding
              img->mpr[ii+ioff][jj+joff]=(int)((fw_pred+bw_pred)/2.+.5);
            }
          }
        }

        itrans(img,ioff,joff,2*uv+i,j);
        for(ii=0;ii<4;ii++)
          for(jj=0;jj<4;jj++)
          {
            imgUV[uv][j4+jj][i4+ii]=img->m7[ii][jj];
          }
      } // for(i=0;i<2;i++)
    } // for (j=4;j<6;j++)
  } // for(uv=0;uv<2;uv++)


#if POS
  imgUV[0][img->pix_c_y][img->pix_c_x]= color;
  imgUV[1][img->pix_c_y][img->pix_c_x]= color;
#endif

  return DECODING_OK;
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲乱码日产精品bd| 国产精品自拍毛片| 亚洲一二三区不卡| 青娱乐精品视频| 国内精品国产三级国产a久久| 国产真实乱对白精彩久久| 韩国av一区二区| 欧美一区三区四区| 欧美电影免费观看高清完整版在| 日韩视频免费观看高清在线视频| 久久久精品一品道一区| 国产精品高清亚洲| 五月天激情综合网| 国产精品2024| 欧美日韩另类国产亚洲欧美一级| 日韩欧美一区二区在线视频| 国产精品情趣视频| 丝袜a∨在线一区二区三区不卡| 精品系列免费在线观看| 91丨porny丨中文| 日韩欧美视频在线| 亚洲精品高清视频在线观看| 久久精品国产一区二区三区免费看| 国产一区二区在线免费观看| 色悠悠亚洲一区二区| 精品久久久久99| 亚洲成人1区2区| 97se亚洲国产综合在线| 久久色视频免费观看| 亚洲午夜精品一区二区三区他趣| 久久久www成人免费毛片麻豆| 91精品国产综合久久久久久久| 欧美一区二区在线观看| 一区二区三区四区亚洲| 国产精品综合久久| 日韩一区二区在线观看| 亚洲免费成人av| 91女厕偷拍女厕偷拍高清| 欧美极品aⅴ影院| 国内成人自拍视频| 欧美tk—视频vk| 经典一区二区三区| 欧美成人a在线| 美国十次了思思久久精品导航| 欧美久久婷婷综合色| 午夜久久久影院| 欧美一区二区三区不卡| 久久99国产精品久久99| 91精品国产丝袜白色高跟鞋| 亚洲成a人片综合在线| 欧美性一二三区| 亚洲成人动漫在线免费观看| 欧美日韩亚洲综合在线| 日韩精品国产精品| 精品久久久久久久久久久久久久久| 精品一区免费av| 国产欧美综合在线| 久久色中文字幕| 国产jizzjizz一区二区| 亚洲欧美日韩国产另类专区| 欧美日韩国产一级二级| 美国毛片一区二区三区| 国产日韩欧美综合在线| 99久久免费视频.com| 亚洲国产精品精华液网站| 91精品国产综合久久精品图片| 精品亚洲欧美一区| 精品久久久久一区二区国产| 久草这里只有精品视频| 中文字幕成人av| 在线中文字幕不卡| 国产一区二区看久久| 亚洲欧美另类图片小说| 欧美va日韩va| 91国偷自产一区二区三区成为亚洲经典| 天堂影院一区二区| 国产免费成人在线视频| 欧美高清dvd| 97久久超碰国产精品电影| 精品在线观看视频| 五月天激情综合| 最好看的中文字幕久久| 日韩欧美亚洲国产另类| 欧美视频精品在线观看| 成人综合激情网| 精品一区二区三区av| 亚洲综合精品自拍| 亚洲精品久久久蜜桃| 欧美激情艳妇裸体舞| 久久新电视剧免费观看| 欧美刺激脚交jootjob| 欧美日本韩国一区| 久久久久久久久久久久久女国产乱| 欧美日韩色综合| 欧美在线观看视频一区二区 | 免费在线欧美视频| 亚洲国产裸拍裸体视频在线观看乱了| 国产欧美一区二区在线| 欧美精品一区二区久久婷婷| 欧美日韩日日骚| 欧美日韩国产系列| 欧美高清性hdvideosex| 7777精品伊人久久久大香线蕉最新版| 欧美制服丝袜第一页| 成人午夜激情影院| 久久se精品一区二区| 国产一区二区三区免费看| 黄网站免费久久| 丰满放荡岳乱妇91ww| 成人av资源站| 欧美日韩视频在线一区二区| 欧美日韩成人综合在线一区二区| 欧美日韩亚洲综合在线| 91精品在线观看入口| 欧美一卡二卡在线观看| 久久久久久久国产精品影院| 国产精品理论在线观看| 亚洲电影在线播放| 久久精品国产第一区二区三区| 韩国v欧美v亚洲v日本v| 99re8在线精品视频免费播放| 色综合久久久久久久久| 欧美一级二级三级乱码| 石原莉奈在线亚洲二区| 伦理电影国产精品| 99精品偷自拍| 欧美人妖巨大在线| 国产视频一区二区在线| 亚洲成av人**亚洲成av**| 精品一区二区三区日韩| 色综合欧美在线视频区| 日韩欧美一区在线| 亚洲综合激情网| 国产99久久久久久免费看农村| 欧美色综合网站| 国产精品久久久久影院老司| 免费精品视频在线| 色婷婷av一区二区三区之一色屋| 欧美va在线播放| 麻豆国产91在线播放| 一本一道波多野结衣一区二区| 国产亚洲综合在线| 免费三级欧美电影| 欧美三级资源在线| 悠悠色在线精品| 一本一道波多野结衣一区二区| 午夜精品久久久久久久久| 视频一区欧美精品| 91色在线porny| 国产精品美女一区二区| 国产精品资源网站| 日韩精品在线一区二区| 日韩成人伦理电影在线观看| 欧美三级中文字幕| 日韩国产欧美在线播放| 欧美精品自拍偷拍动漫精品| 午夜欧美2019年伦理| 这里只有精品免费| 老汉av免费一区二区三区| 精品人在线二区三区| 美脚の诱脚舐め脚责91| 久久精品欧美一区二区三区不卡| 国模冰冰炮一区二区| 久久精品人人做人人爽人人| 国产露脸91国语对白| 中文在线免费一区三区高中清不卡| 国产aⅴ精品一区二区三区色成熟| 国产亚洲精品7777| 91久久精品国产91性色tv| 亚洲地区一二三色| 日韩欧美精品三级| 国产一区二区三区四区五区入口| 国产视频一区在线观看| 99re成人精品视频| 日韩黄色片在线观看| 国产午夜精品美女毛片视频| 97精品久久久午夜一区二区三区| 亚洲午夜视频在线观看| 久久综合狠狠综合久久综合88| 成人午夜在线视频| 天天综合天天综合色| 久久青草国产手机看片福利盒子 | 欧美一区二区三区白人 | 一本色道综合亚洲| 日韩电影一区二区三区| 国产精品成人一区二区三区夜夜夜| 91国内精品野花午夜精品| 丁香婷婷综合激情五月色| 国产日产精品一区| 91国偷自产一区二区开放时间| 老司机免费视频一区二区三区| 亚洲天堂网中文字| 久久色在线观看| 欧美一区二区在线观看| 91黄色激情网站| 97精品久久久久中文字幕| 国产成人在线视频网站| 蜜桃传媒麻豆第一区在线观看| 亚洲影院在线观看| 中文字幕在线一区免费|