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

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

?? pgain.c

?? this the source code of addio compression standard CELP. Also, it is optimizied for the execution sp
?? C
字號(hào):
/**************************************************************************
*
* ROUTINE
*               pgain
*
* FUNCTION
*               Find pitch gain and error
*
* SYNOPSIS
*               function pgain(ex, l, first, m, len, match)
*
*   formal
*
*                       data    I/O
*       name            type    type    function
*       -------------------------------------------------------------------
*       ex[l]           float   i       excitation vector
*       l               int     i       size of ex
*       first           int     i       first call flag
*       m               int     i       pitch lag
*       len             int     i       length to truncate impulse response
*       match           float   o       negative partial squared error
*       pgain           float   fun     optimal gain for ex
*
*   external
*                       data    I/O
*       name            type    type    function
*       -------------------------------------------------------------------
*       e0[]            float   i
*       h[]             float   i
*
***************************************************************************/

#include "ccsub.h"
extern float e0[MAXLP], h[MAXLP];
extern int nseg;
float 
pgain(ex, l, first, m, len, match)
int l, first, m, len;
float ex[], *match;
{
  register float cor;
  static float eng, eng0;
  float y2[MAXLP]; 
  register float pgain;
  static float y[MAXLP];
  register int i;
  int j;

  register float temp;

  if (first)
  { 


    for (i = 0; i < len; i++)
    {
      y[i] = 0.0;
      for (j = 0; j <= i; j++)
	y[i] += h[j] * ex[i - j];
    }

#define FLIT(K)                  temp = h[0]*ex[K];     \
                                 temp += h[1]*ex[K-1];  \
                                 temp += h[2]*ex[K-2];  \
                                 temp += h[3]*ex[K-3];  \
                                 temp += h[4]*ex[K-4];  \
                                 y[K]  = temp;

        FLIT(5);
        FLIT(6);  FLIT(7);  FLIT(8);  FLIT(9);  FLIT(10); FLIT(11);
        FLIT(12); FLIT(13); FLIT(14); FLIT(15); FLIT(16); FLIT(17);
        FLIT(18); FLIT(19); FLIT(20); FLIT(21); FLIT(22); FLIT(23);
        FLIT(24); FLIT(25); FLIT(26); FLIT(27); FLIT(28); FLIT(29);
        FLIT(30); FLIT(31); FLIT(32); FLIT(33); FLIT(34); FLIT(35);
        FLIT(36); FLIT(37); FLIT(38); FLIT(39); FLIT(40); FLIT(41);
        FLIT(42); FLIT(43); FLIT(44); FLIT(45); FLIT(46); FLIT(47);
        FLIT(48); FLIT(49); FLIT(50); FLIT(51); FLIT(52); FLIT(53);
        FLIT(54); FLIT(55); FLIT(56); FLIT(57); FLIT(58); FLIT(59);

/*
    for (i = len; i < l; i++)
    {
      y[i] = 0.0;
      for (j = 0; j < len; j++)
	y[i] += h[j] * ex[i - j];
    }
*/
  }
  else
  {
  y[3] += ex[0]*h[4];
  y[2] += ex[0]*h[3];
  y[1] += ex[0]*h[2];
  y[0] += ex[0]*h[1];

/*     for (i = l - 1; i > 0; i--) y[i] = y[i - 1];      */
  memmove( (char *)(y+1), (char *)(y), (l-1)*sizeof(float) );

    y[0] = ex[0] * h[0];
  }

  /* *For lags (m) shorter than frame size (l), replicate the short
     *adaptive codeword to the full codeword length by
     *overlapping and adding the convolutions:			 	 */

/*  for (i = 0; i < l; i++) y2[i] = y[i];      */
  memcpy( (char *)(y2), (char *)(y), l*sizeof(float) );

  if (m < l)			
  {

    for (i = m; i < l; i++)
    {
      y2[i] = y[i] + y[i - m];
    }

    if (m < l / 2)		
    {
      j = 2*m;
      for (i = j; i < l; i++)
      {
         y2[i] = y2[i] + y[i - j];
      }
    }
  }

  /* *Calculate correlation and energy:
      e0 = r[n]   = spectrum prediction residual
      y2 = r[n-m] = error weighting filtered reconstructed
  	            pitch prediction signal (m = correlation lag)	 */

#define STEP(k)         cor += y2[k] * e0[k];
  cor = 0.0;
        STEP(0);  STEP(1);  STEP(2);  STEP(3);  STEP(4);  STEP(5);
        STEP(6);  STEP(7);  STEP(8);  STEP(9);  STEP(10); STEP(11);
        STEP(12); STEP(13); STEP(14); STEP(15); STEP(16); STEP(17);
        STEP(18); STEP(19); STEP(20); STEP(21); STEP(22); STEP(23);
        STEP(24); STEP(25); STEP(26); STEP(27); STEP(28); STEP(29);
        STEP(30); STEP(31); STEP(32); STEP(33); STEP(34); STEP(35);
        STEP(36); STEP(37); STEP(38); STEP(39); STEP(40); STEP(41);
        STEP(42); STEP(43); STEP(44); STEP(45); STEP(46); STEP(47);
        STEP(48); STEP(49); STEP(50); STEP(51); STEP(52); STEP(53);
        STEP(54); STEP(55); STEP(56); STEP(57); STEP(58); STEP(59);
#define ENG(k)   eng += y2[k] * y2[k];

     if(first || m<=l)
     {
  eng = 0.0;
       ENG(0);  ENG(1);  ENG(2);  
       eng0 = ENG(3);  ENG(4);  ENG(5);
        ENG(6);  ENG(7);  ENG(8);  ENG(9);  ENG(10); ENG(11);
        ENG(12); ENG(13); ENG(14); ENG(15); ENG(16); ENG(17);
        ENG(18); ENG(19); ENG(20); ENG(21); ENG(22); ENG(23);
        ENG(24); ENG(25); ENG(26); ENG(27); ENG(28); ENG(29);
        ENG(30); ENG(31); ENG(32); ENG(33); ENG(34); ENG(35);
        ENG(36); ENG(37); ENG(38); ENG(39); ENG(40); ENG(41);
        ENG(42); ENG(43); ENG(44); ENG(45); ENG(46); ENG(47);
        ENG(48); ENG(49); ENG(50); ENG(51); ENG(52); ENG(53);
        ENG(54); ENG(55); ENG(56); ENG(57); eng0-=ENG(58); 
       eng0+=ENG(59);
     }

     else
     {
        eng -= eng0;
        eng0 = y2[0] * y2[0];
        eng0 += y2[1] * y2[1];
        eng0 += y2[2] * y2[2];
        eng0 += y2[3] * y2[3];
        eng += y2[4] * y2[4];
        eng += eng0;
        eng0 += y2[59] * y2[59];
     }



  /* *Compute gain and error:
      NOTE: Actual MSPE = e0.e0 - pgain(2*cor-pgain*eng)
            since e0.e0 is independent of the code word,
	    minimizing MSPE is equivalent to maximizing:
	         match = pgain(2*cor-pgain*eng)   (1)
	    If unquantized pgain is used, this simplifies:
	         match = cor*pgain

      NOTE: When the delay is less than the frame length, "match"
	    is only an approximation to the actual error.		

      Independent (open-loop) quantization of gain and match (index):	 */

/*  if (eng <= 0.0) eng = 1.0;          */
  pgain = cor / eng;
  *match = cor * pgain;

  return (pgain);
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91美女片黄在线观看91美女| 亚洲国产一区二区在线播放| 国产一区二区三区在线看麻豆| 欧美人动与zoxxxx乱| 亚洲线精品一区二区三区八戒| 一本到不卡免费一区二区| 亚洲一区欧美一区| 欧美性大战久久久久久久| 午夜电影网亚洲视频| 91精品国产免费| 精品一区二区av| 中文字幕精品一区| 92精品国产成人观看免费| 亚洲大片免费看| 精品国产乱码久久久久久老虎| 国产一区二区毛片| 综合激情成人伊人| 欧美区视频在线观看| 国产一区在线精品| 亚洲欧洲精品一区二区精品久久久 | 国产女同性恋一区二区| 91在线无精精品入口| 丝袜诱惑亚洲看片| 久久久99精品免费观看| 99国产精品久久| 男人操女人的视频在线观看欧美| 国产日韩精品一区二区三区在线| 91麻豆.com| 韩国毛片一区二区三区| 国产精品大尺度| 欧美一区二区视频观看视频| 成人午夜激情视频| 日韩激情一二三区| 国产色产综合色产在线视频| 精品视频一区 二区 三区| 国产精一品亚洲二区在线视频| 亚洲人成7777| 久久你懂得1024| 欧美日韩一区高清| www.欧美色图| 国产一区二区在线影院| 亚洲国产日产av| 欧美激情艳妇裸体舞| 日韩小视频在线观看专区| 99久久精品99国产精品| 激情综合五月婷婷| 亚洲香肠在线观看| 国产精品夫妻自拍| 亚洲高清在线视频| 亚洲国产精品精华液ab| 日韩免费视频线观看| 在线视频你懂得一区二区三区| 国产成人自拍网| 日韩国产精品久久| 伊人性伊人情综合网| 久久精品免费在线观看| 日韩欧美的一区| 欧美卡1卡2卡| 欧美性受xxxx黑人xyx性爽| www.日韩av| 丁香天五香天堂综合| 狠狠色丁香九九婷婷综合五月| 天天射综合影视| 一区二区三区日韩精品视频| 亚洲天堂av一区| 国产精品久久久久久久裸模| 久久婷婷国产综合精品青草| 欧美成人免费网站| 91精品国产高清一区二区三区| 欧美四级电影在线观看| 色欧美乱欧美15图片| 91在线视频播放地址| 成人免费av在线| 成人午夜在线视频| 国产成人欧美日韩在线电影| 国产一区二区三区美女| 国内不卡的二区三区中文字幕 | 欧美日韩和欧美的一区二区| 91一区在线观看| 成人97人人超碰人人99| 99国产欧美久久久精品| 色综合天天在线| 国产三级精品视频| 国产欧美日韩久久| 国产精品系列在线| 中文字幕精品在线不卡| 亚洲少妇最新在线视频| 一区二区三区四区国产精品| 亚洲乱码日产精品bd| 亚洲一区二区三区自拍| 亚洲va国产天堂va久久en| 午夜国产不卡在线观看视频| 蜜臀精品一区二区三区在线观看 | 国产欧美日韩在线看| 国产精品网站在线观看| 国产精品热久久久久夜色精品三区| 国产精品每日更新| 亚洲影院久久精品| 免费在线欧美视频| 国产成人在线色| 色综合天天综合给合国产| 欧美高清视频在线高清观看mv色露露十八 | 国产美女一区二区三区| 日韩欧美中文字幕一区| 久久久精品tv| 亚洲视频免费在线观看| 亚洲国产精品一区二区www在线| 日韩精品1区2区3区| 国产伦精品一区二区三区视频青涩| 懂色中文一区二区在线播放| 91久久精品日日躁夜夜躁欧美| 欧美福利视频一区| 久久久久久久精| 亚洲欧美日韩成人高清在线一区| 天堂精品中文字幕在线| 国产suv精品一区二区6| 在线精品视频免费播放| 久久久欧美精品sm网站| 亚洲福利一二三区| 国产精品中文字幕日韩精品 | 亚洲国产欧美一区二区三区丁香婷| 亚洲动漫第一页| 国产乱码精品一区二区三区五月婷 | 国产精品久久久久久久久晋中| 亚洲一级片在线观看| 国产资源精品在线观看| 91久久精品一区二区三| 2023国产精华国产精品| 一区2区3区在线看| 国产一区二区三区在线观看免费| 日本电影亚洲天堂一区| 日韩av电影天堂| 不卡一区在线观看| 欧美大肚乱孕交hd孕妇| 亚洲与欧洲av电影| 国产激情视频一区二区在线观看| 欧美午夜精品理论片a级按摩| 国产欧美日韩麻豆91| 蜜臀av性久久久久蜜臀aⅴ | 国产偷v国产偷v亚洲高清| 亚洲福利视频导航| youjizz久久| 26uuu成人网一区二区三区| 亚洲一区视频在线| 99久久精品国产一区二区三区| 精品国产麻豆免费人成网站| 亚洲不卡av一区二区三区| 91在线观看下载| 国产亚洲1区2区3区| 蜜桃视频在线观看一区| 欧美三级日韩三级| 亚洲欧洲色图综合| 国产成人亚洲综合a∨婷婷图片| 欧美一级理论性理论a| 亚洲午夜在线视频| 97se狠狠狠综合亚洲狠狠| 欧美激情一区二区三区四区| 国产乱子轮精品视频| 精品毛片乱码1区2区3区| 一本色道综合亚洲| 欧美激情在线观看视频免费| 国产另类ts人妖一区二区| 精品国产区一区| 国产一区二区三区免费| 精品国产乱码久久久久久蜜臀| 久久精品国产99国产| 日韩一卡二卡三卡国产欧美| 午夜电影一区二区| 91精品国产乱码久久蜜臀| 青娱乐精品视频在线| 日韩丝袜美女视频| 蜜臀久久99精品久久久久宅男| 日韩一级二级三级精品视频| 免费观看日韩av| 欧美精品一区二区久久婷婷| 久久99国内精品| 久久综合九色综合97婷婷| 国内精品伊人久久久久影院对白| 欧美tickling挠脚心丨vk| 美女一区二区三区| 久久久.com| 不卡一区二区三区四区| 亚洲三级免费电影| 在线观看一区二区精品视频| 午夜欧美电影在线观看| 日韩视频中午一区| 国产乱色国产精品免费视频| 国产精品国模大尺度视频| 色综合网色综合| 首页国产欧美久久| 精品少妇一区二区三区在线播放| 国产精品一二一区| 最新欧美精品一区二区三区| 在线亚洲高清视频| 免费在线观看成人| 久久精品一级爱片| 色综合欧美在线| 日韩精品每日更新| 国产调教视频一区| 欧美色爱综合网|