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

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

?? qua_gain.c

?? G.729 coder and decoder, ANSI C, for windows, unix, DSP, etc.
?? C
?? 第 1 頁 / 共 2 頁
字號:

   exp_min[0] = add( exp_coeff[0], 13 );
   exp_min[1] = add( exp_coeff[1], 14 );
   exp_min[2] = add( exp_coeff[2], sub( shl( exp_gcode0, 1 ), 21 ) );
   exp_min[3] = add( exp_coeff[3], sub( exp_gcode0, 3 ) );
   exp_min[4] = add( exp_coeff[4], sub( exp_gcode0, 4 ) );

   e_min = exp_min[0];
   for(i=1; i<5; i++){
      if( sub(exp_min[i], e_min) < 0 ){
         e_min = exp_min[i];
      }
   }

   /* align coeff[] and save in special 32 bit double precision */

   for(i=0; i<5; i++){
     j = sub( exp_min[i], e_min );
     L_tmp = L_deposit_h( g_coeff[i] );
     L_tmp = L_shr( L_tmp, j );          /* L_tmp:Q[exp_g_coeff[i]+16-j] */
     L_Extract( L_tmp, &coeff[i], &coeff_lsf[i] );          /* DPF */
   }

   /* Codebook search */

   L_dist_min = MAX_32;

   /* initialization used only to suppress Microsoft Visual C++  warnings */
   index1 = cand1;
   index2 = cand2;

if(tameflag == 1){
   for(i=0; i<NCAN1; i++){
      for(j=0; j<NCAN2; j++){
         g_pitch = add( gbk1[cand1+i][0], gbk2[cand2+j][0] );     /* Q14 */
         if(g_pitch < GP0999) {
         L_acc = L_deposit_l( gbk1[cand1+i][1] );
         L_accb = L_deposit_l( gbk2[cand2+j][1] );                /* Q13 */
         L_tmp = L_add( L_acc,L_accb );
         tmp = extract_l( L_shr( L_tmp,1 ) );                     /* Q12 */

         g_code   = mult( gcode0, tmp );         /*  Q[exp_gcode0+12-15] */
         g2_pitch = mult(g_pitch, g_pitch);                       /* Q13 */
         g2_code  = mult(g_code,  g_code);       /* Q[2*exp_gcode0-6-15] */
         g_pit_cod= mult(g_code,  g_pitch);      /* Q[exp_gcode0-3+14-15] */

         L_tmp = Mpy_32_16(coeff[0], coeff_lsf[0], g2_pitch);
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[1], coeff_lsf[1], g_pitch) );
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[2], coeff_lsf[2], g2_code) );
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[3], coeff_lsf[3], g_code) );
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[4], coeff_lsf[4], g_pit_cod) );

         L_temp = L_sub(L_tmp, L_dist_min);

         if( L_temp < 0L ){
            L_dist_min = L_tmp;
            index1 = add(cand1,i);
            index2 = add(cand2,j);
         }
        }
      }
   }

}
else{
   for(i=0; i<NCAN1; i++){
      for(j=0; j<NCAN2; j++){
         g_pitch = add( gbk1[cand1+i][0], gbk2[cand2+j][0] );     /* Q14 */
         L_acc = L_deposit_l( gbk1[cand1+i][1] );
         L_accb = L_deposit_l( gbk2[cand2+j][1] );                /* Q13 */
         L_tmp = L_add( L_acc,L_accb );
         tmp = extract_l( L_shr( L_tmp,1 ) );                     /* Q12 */

         g_code   = mult( gcode0, tmp );         /*  Q[exp_gcode0+12-15] */
         g2_pitch = mult(g_pitch, g_pitch);                       /* Q13 */
         g2_code  = mult(g_code,  g_code);       /* Q[2*exp_gcode0-6-15] */
         g_pit_cod= mult(g_code,  g_pitch);      /* Q[exp_gcode0-3+14-15] */

         L_tmp = Mpy_32_16(coeff[0], coeff_lsf[0], g2_pitch);
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[1], coeff_lsf[1], g_pitch) );
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[2], coeff_lsf[2], g2_code) );
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[3], coeff_lsf[3], g_code) );
         L_tmp = L_add(L_tmp, Mpy_32_16(coeff[4], coeff_lsf[4], g_pit_cod) );

         L_temp = L_sub(L_tmp, L_dist_min);

         if( L_temp < 0L ){
            L_dist_min = L_tmp;
            index1 = add(cand1,i);
            index2 = add(cand2,j);
         }

      }
   }
}
   /* Read the quantized gain */

  /*-----------------------------------------------------------------*
   * *gain_pit = gbk1[indice1][0] + gbk2[indice2][0];                *
   *-----------------------------------------------------------------*/
   *gain_pit = add( gbk1[index1][0], gbk2[index2][0] );      /* Q14 */

  /*-----------------------------------------------------------------*
   * *gain_code = (gbk1[indice1][1]+gbk2[indice2][1]) * gcode0;      *
   *-----------------------------------------------------------------*/
   L_acc = L_deposit_l( gbk1[index1][1] );
   L_accb = L_deposit_l( gbk2[index2][1] );
   L_gbk12 = L_add( L_acc, L_accb );                          /* Q13 */
   tmp = extract_l( L_shr( L_gbk12,1 ) );                     /* Q12 */
   L_acc = L_mult(tmp, gcode0);                /* Q[exp_gcode0+12+1] */

   L_acc = L_shl(L_acc, add( negate(exp_gcode0),(-12-1+1+16) ));
   *gain_cod = extract_h( L_acc );                             /* Q1 */

  /*----------------------------------------------*
   * update table of past quantized energies      *
   *----------------------------------------------*/
   Gain_update( past_qua_en, L_gbk12 );

   return( add( map1[index1]*(Word16)NCODE2, map2[index2] ) );

}
/*---------------------------------------------------------------------------*
 * Function Gbk_presel                                                       *
 * ~~~~~~~~~~~~~~~~~~~                                                       *
 *   - presearch for gain codebook -                                         *
 *---------------------------------------------------------------------------*/
static void Gbk_presel(
   Word16 best_gain[],     /* (i) [0] Q9 : unquantized pitch gain     */
                           /* (i) [1] Q2 : unquantized code gain      */
   Word16 *cand1,          /* (o)    : index of best 1st stage vector */
   Word16 *cand2,          /* (o)    : index of best 2nd stage vector */
   Word16 gcode0           /* (i) Q4 : presearch for gain codebook    */
)
{
   Word16    acc_h;
   Word16    sft_x,sft_y;
   Word32    L_acc,L_preg,L_cfbg,L_tmp,L_tmp_x,L_tmp_y;
   Word32 L_temp;

 /*--------------------------------------------------------------------------*
   x = (best_gain[1]-(coef[0][0]*best_gain[0]+coef[1][1])*gcode0) * inv_coef;
  *--------------------------------------------------------------------------*/
   L_cfbg = L_mult( coef[0][0], best_gain[0] );        /* L_cfbg:Q20 -> !!y */
   L_acc = L_shr( L_coef[1][1], 15 );                  /* L_acc:Q20     */
   L_acc = L_add( L_cfbg , L_acc );
   acc_h = extract_h( L_acc );                         /* acc_h:Q4      */
   L_preg = L_mult( acc_h, gcode0 );                   /* L_preg:Q9     */
   L_acc = L_shl( L_deposit_l( best_gain[1] ), 7 );    /* L_acc:Q9      */
   L_acc = L_sub( L_acc, L_preg );
   acc_h = extract_h( L_shl( L_acc,2 ) );              /* L_acc_h:Q[-5] */
   L_tmp_x = L_mult( acc_h, INV_COEF );                /* L_tmp_x:Q15   */

 /*--------------------------------------------------------------------------*
   y = (coef[1][0]*(-coef[0][1]+best_gain[0]*coef[0][0])*gcode0
                                      -coef[0][0]*best_gain[1]) * inv_coef;
  *--------------------------------------------------------------------------*/
   L_acc = L_shr( L_coef[0][1], 10 );                  /* L_acc:Q20   */
   L_acc = L_sub( L_cfbg, L_acc );                     /* !!x -> L_cfbg:Q20 */
   acc_h = extract_h( L_acc );                         /* acc_h:Q4    */
   acc_h = mult( acc_h, gcode0 );                      /* acc_h:Q[-7] */
   L_tmp = L_mult( acc_h, coef[1][0] );                /* L_tmp:Q10   */

   L_preg = L_mult( coef[0][0], best_gain[1] );        /* L_preg:Q13  */
   L_acc = L_sub( L_tmp, L_shr(L_preg,3) );            /* L_acc:Q10   */

   acc_h = extract_h( L_shl( L_acc,2 ) );              /* acc_h:Q[-4] */
   L_tmp_y = L_mult( acc_h, INV_COEF );                /* L_tmp_y:Q16 */

   sft_y = (14+4+1)-16;         /* (Q[thr1]+Q[gcode0]+1)-Q[L_tmp_y] */
   sft_x = (15+4+1)-15;         /* (Q[thr2]+Q[gcode0]+1)-Q[L_tmp_x] */

   if(gcode0>0){
      /*-- pre select codebook #1 --*/
      *cand1 = 0 ;
      do{
         L_temp = L_sub( L_tmp_y, L_shr(L_mult(thr1[*cand1],gcode0),sft_y));
         if(L_temp >0L  ){
        (*cand1) =add(*cand1,1);
     }
         else               break ;
      } while(sub((*cand1),(NCODE1-NCAN1))<0) ;
      /*-- pre select codebook #2 --*/
      *cand2 = 0 ;
      do{
        L_temp = L_sub( L_tmp_x , L_shr(L_mult(thr2[*cand2],gcode0),sft_x));
         if( L_temp >0L) {
        (*cand2) =add(*cand2,1);
     }
         else               break ;
      } while(sub((*cand2),(NCODE2-NCAN2))<0) ;
   }
   else{
      /*-- pre select codebook #1 --*/
      *cand1 = 0 ;
      do{
        L_temp = L_sub(L_tmp_y ,L_shr(L_mult(thr1[*cand1],gcode0),sft_y));
         if( L_temp <0L){
        (*cand1) =add(*cand1,1);
     }
         else               break ;
      } while(sub((*cand1),(NCODE1-NCAN1))) ;
      /*-- pre select codebook #2 --*/
      *cand2 = 0 ;
      do{
         L_temp =L_sub(L_tmp_x ,L_shr(L_mult(thr2[*cand2],gcode0),sft_x));
         if( L_temp <0L){
        (*cand2) =add(*cand2,1);
     }
         else               break ;
      } while(sub( (*cand2),(NCODE2-NCAN2))) ;
   }

   return ;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产高清一区二区三区 | 丁香激情综合国产| 成人福利视频在线| 日韩欧美黄色影院| 亚洲国产日韩精品| 成人的网站免费观看| 精品国产区一区| 亚洲成人激情av| 91免费观看视频在线| 久久伊99综合婷婷久久伊| 午夜欧美视频在线观看| 91国偷自产一区二区使用方法| 久久先锋影音av鲁色资源网| 免费不卡在线视频| 欧美理论片在线| 亚洲成人av一区二区| 在线免费亚洲电影| 国产精品久久福利| 成人av在线播放网站| 亚洲国产精品精华液ab| 国产一区二区三区黄视频 | 日韩中文字幕av电影| 91在线一区二区| 国产精品久久久99| av成人动漫在线观看| 国产亚洲美州欧州综合国| 精品一区二区三区影院在线午夜| 欧美一区二区三区免费视频| 五月天激情小说综合| 欧美一a一片一级一片| 亚洲一区在线视频观看| 在线国产电影不卡| 一区二区国产视频| 欧美三级蜜桃2在线观看| 亚洲大片在线观看| 欧美男同性恋视频网站| 日韩精品一级中文字幕精品视频免费观看 | 久久这里都是精品| 国产一区二区三区不卡在线观看 | 日本高清不卡一区| 一区二区在线观看免费| 欧美中文字幕不卡| 亚洲图片一区二区| 日韩一区二区高清| 麻豆成人av在线| 久久伊99综合婷婷久久伊| 国产精品久久免费看| 精东粉嫩av免费一区二区三区| 日本高清成人免费播放| 亚洲成av人**亚洲成av**| 6080yy午夜一二三区久久| 久久99精品久久久久久动态图 | 日韩国产精品91| 欧美一区二区三区四区视频| 久久国产成人午夜av影院| 久久久久亚洲蜜桃| aaa欧美大片| 亚洲国产欧美另类丝袜| 精品日产卡一卡二卡麻豆| 国产99久久久国产精品免费看| 国产精品天美传媒沈樵| 在线观看亚洲一区| 久久成人羞羞网站| 综合久久久久久| 欧美精品tushy高清| 国产一区二区三区精品视频| 自拍偷在线精品自拍偷无码专区 | 日本中文一区二区三区| 久久老女人爱爱| 色婷婷国产精品| 韩日av一区二区| 日韩理论片中文av| 日韩欧美国产成人一区二区| 成人黄色小视频| 日韩激情视频在线观看| 亚洲欧美自拍偷拍| 日韩写真欧美这视频| 99r精品视频| 精品一区二区在线视频| 一区二区视频在线| 久久精品夜色噜噜亚洲aⅴ| 欧美网站大全在线观看| 国产福利一区二区| 日本不卡一二三| 一区二区三区四区激情| 国产精品午夜在线| 精品国产露脸精彩对白 | 成人免费看的视频| 日本欧美一区二区三区乱码 | 日本不卡不码高清免费观看| 亚洲日本丝袜连裤袜办公室| 久久久五月婷婷| 91精品国产手机| 欧美视频精品在线观看| 91小视频在线免费看| 丁香婷婷综合激情五月色| 日韩精品欧美精品| 亚洲国产毛片aaaaa无费看| 中文字幕五月欧美| 国产欧美视频在线观看| 久久亚洲一区二区三区四区| 91精品国产色综合久久ai换脸 | 91精品午夜视频| 欧美无砖砖区免费| 欧美亚洲综合另类| 色偷偷88欧美精品久久久| 国产91精品一区二区麻豆网站| 免费看黄色91| 久久精品国产亚洲高清剧情介绍 | 日韩欧美国产一二三区| 欧美日韩国产欧美日美国产精品| 99综合电影在线视频| 9人人澡人人爽人人精品| 91在线视频网址| 91免费看视频| 在线中文字幕一区二区| 色婷婷一区二区三区四区| 91蜜桃在线观看| 色综合久久88色综合天天免费| 福利一区二区在线观看| 成人免费高清视频在线观看| 国产·精品毛片| 91色视频在线| 欧美日韩另类国产亚洲欧美一级| 欧美日韩美少妇| 欧美一区三区二区| 精品国一区二区三区| 久久久久久9999| 国产精品第13页| 一区二区三区免费| 午夜电影一区二区三区| 蜜桃在线一区二区三区| 国产尤物一区二区| 波多野结衣精品在线| 91黄视频在线| 日韩三级.com| 国产精品久久久一本精品 | 欧美无乱码久久久免费午夜一区| 欧美日韩在线播放三区| 91精品国产综合久久精品app| 日韩一区二区精品葵司在线| 久久久久久久久一| 日韩美女视频一区二区| 香港成人在线视频| 国产一区二区三区综合| 91农村精品一区二区在线| 欧美日韩国产乱码电影| 欧美精品一区二区高清在线观看| 国产精品久久毛片| 免费在线看一区| av色综合久久天堂av综合| 欧美日韩aaaaaa| 欧美国产禁国产网站cc| 亚洲高清三级视频| 国产黄色91视频| 欧美日韩一区高清| 中文字幕精品在线不卡| 亚洲777理论| 成人97人人超碰人人99| 欧美电影在哪看比较好| 欧美激情一区二区三区蜜桃视频| 亚洲免费观看在线观看| 精品一区二区三区免费| 在线观看一区日韩| 国产精品美女久久久久久久久| 日韩中文字幕麻豆| 色素色在线综合| 国产欧美1区2区3区| 青青青伊人色综合久久| 91久久线看在观草草青青| 久久综合色天天久久综合图片| 洋洋成人永久网站入口| 成人午夜av在线| 精品国产乱码久久| 日韩中文字幕区一区有砖一区| 色婷婷久久久久swag精品 | 午夜精品成人在线视频| 不卡欧美aaaaa| 久久精品人人做人人爽97| 午夜久久久久久久久久一区二区| 成人精品一区二区三区中文字幕| 91精品一区二区三区在线观看| 亚洲综合另类小说| 成人97人人超碰人人99| 国产欧美视频在线观看| 国产美女娇喘av呻吟久久| 91麻豆精品国产91久久久更新时间 | 精品国产乱码久久久久久图片| 亚洲伊人色欲综合网| 91亚洲国产成人精品一区二区三 | 本田岬高潮一区二区三区| 久久亚洲精精品中文字幕早川悠里 | 奇米色777欧美一区二区| 欧美精品日日鲁夜夜添| 亚洲国产美女搞黄色| 欧美图片一区二区三区| 亚洲不卡一区二区三区| 欧美疯狂做受xxxx富婆| 日韩和欧美一区二区三区| 69堂成人精品免费视频|