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

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

?? exc_lbc.c

?? 這個(gè)是ITUG723.1編解碼源程序代碼
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        *p2 = extract_h(cor);        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        *p1 = extract_h(cor);        l_fin_sup -= NB_POS;        l_fin_inf--;        ptr_hf += STEP;    } /*  * Compute elements of: rri0i2[], rri1i3[]  */    ptr_hd = h;    ptr_hf = ptr_hd + 4;    l_fin_sup = MSIZE-1;    l_fin_inf = l_fin_sup-(Word16)1;    for(k=0; k<NB_POS; k++) {        p3 = rri1i3 + l_fin_sup;        p2 = rri0i2 + l_fin_sup;        p1 = rri1i3 + l_fin_inf;        p0 = rri0i2 + l_fin_inf;        cor = 0;        ptr_h1 = ptr_hd;        ptr_h2 =  ptr_hf;        for(i=k+(Word16)1; i<NB_POS; i++ ) {            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p3 = extract_h(cor);            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p2 = extract_h(cor);            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p1 = extract_h(cor);            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p0 = extract_h(cor);            p3 -= ldec;            p2 -= ldec;            p1 -= ldec;            p0 -= ldec;        }        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        *p3 = extract_h(cor);        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        *p2 = extract_h(cor);        l_fin_sup -= NB_POS;        l_fin_inf--;        ptr_hf += STEP;    } /*  * Compute elements of: rri0i1[], rri0i3[], rri1i2[] and rri2i3[]  */    ptr_hd = h;    ptr_hf = ptr_hd + 6;    l_fin_sup = MSIZE-1;    l_fin_inf = l_fin_sup-(Word16)1;    for(k=0; k<NB_POS; k++) {        p3 = rri0i3 + l_fin_sup;        p2 = rri2i3 + l_fin_inf;        p1 = rri1i2 + l_fin_inf;        p0 = rri0i1 + l_fin_inf;        ptr_h1 = ptr_hd;        ptr_h2 =  ptr_hf;        cor = 0;        for(i=k+(Word16)1; i<NB_POS; i++ ) {            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p3 = extract_h(cor);            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p2 = extract_h(cor);            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p1 = extract_h(cor);            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;            *p0 = extract_h(cor);            p3 -= ldec;            p2 -= ldec;            p1 -= ldec;            p0 -= ldec;        }        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;        *p3 = extract_h(cor);        l_fin_sup -= NB_POS;        l_fin_inf--;        ptr_hf += STEP;    }    return;}/*****  Function:     Corr_h_X()****  Description:    Compute  correlations of input response h[] with**                  the target vector X[].****  Links to the text: Section 2.16**** Arguments:****      Word16 h[]              Impulse response.**      Word16 X[]              Target vector.**      Word16 D[]              Correlations.****  Outputs:****      Word16 D[]              Correlations.****  Return value:           None*/void Cor_h_X(Word16 h[], Word16 X[], Word16 D[]){    Word16 i, j;    Word32 s, max;    Word32 y32[SubFrLen];    /* first keep the result on 32 bits and find absolute maximum */    max = 0;    for (i = 0; i < SubFrLen; i++) {        s = 0;        for (j = i; j <  SubFrLen; j++)            s = L_mac(s, X[j], h[j-i]);        y32[i] = s;        s = L_abs(s);        if(s > max) max = s;    }    /*     * Find the number of right shifts to do on y32[]     * so that maximum is on 13 bits     */    j = norm_l(max);    if( sub(j,16) > 0) j = 16;    j = sub(18, j);    for(i=0; i<SubFrLen; i++)        D[i] = extract_l( L_shr(y32[i], j) );    return;}/*** Function:            Reset_max_time()****  Description:        This function should be called at the beginning**                      of each frame.****  Links to the text:  Section 2.16****  Arguments:          None****  Inputs:             None****  Outputs:****      Word16          extra****  Return value:           None***/static Word16 extra;void reset_max_time(void){    extra = 120;    return;}/*****  Function:       D4i64_LBC****  Description:       Algebraic codebook for LBC.**                     -> 17 bits; 4 pulses in a frame of 60 samples****                     The code length is 60, containing 4 nonzero pulses**                     i0, i1, i2, i3. Each pulse can have 8 possible**                     positions (positive or negative):****                     i0 (+-1) : 0, 8,  16, 24, 32, 40, 48, 56**                     i1 (+-1) : 2, 10, 18, 26, 34, 42, 50, 58**                     i2 (+-1) : 4, 12, 20, 28, 36, 44, 52, (60)**                     i3 (+-1) : 6, 14, 22, 30, 38, 46, 54, (62)****                     All the pulse can be shifted by one.**                     The last position of the last 2 pulses falls outside the**                     frame and signifies that the pulse is not present.**                     The threshold controls if a section of the innovative**                     codebook should be searched or not.****  Links to the text: Section 2.16****  Input arguments:****      Word16 Dn[]       Correlation between target vector and impulse response h[]**      Word16 rr[]       Correlations of impulse response h[]**      Word16 h[]        Impulse response of filters****  Output arguments:****      Word16 cod[]      Selected algebraic codeword**      Word16 y[]        Filtered codeword**      Word16 code_shift Shift of the codeword**      Word16 sign       Signs of the 4 pulses.****  Return value:****      Word16   Index of selected codevector***/Word16 D4i64_LBC(Word16 Dn[], Word16 rr[], Word16 h[], Word16 cod[],                 Word16 y[], Word16 *code_shift, Word16 *sign){    Word16  i0, i1, i2, i3, ip0, ip1, ip2, ip3;    Word16  i, j, time;    Word16  shif, shift;    Word16  ps0, ps1, ps2, ps3, alp, alp0;    Word32  alp1, alp2, alp3, L32;    Word16  ps0a, ps1a, ps2a;    Word16  ps3c, psc, alpha;    Word16  means, max0, max1, max2, thres;    Word16  *rri0i0, *rri1i1, *rri2i2, *rri3i3;    Word16  *rri0i1, *rri0i2, *rri0i3;    Word16  *rri1i2, *rri1i3, *rri2i3;    Word16  *ptr_ri0i0, *ptr_ri1i1, *ptr_ri2i2, *ptr_ri3i3;    Word16  *ptr_ri0i1, *ptr_ri0i2, *ptr_ri0i3;    Word16  *ptr_ri1i2, *ptr_ri1i3, *ptr_ri2i3;    Word16  *ptr1_ri0i1, *ptr1_ri0i2, *ptr1_ri0i3;    Word16  *ptr1_ri1i2, *ptr1_ri1i3, *ptr1_ri2i3;    Word16  p_sign[SubFrLen2/2];    /* Init pointers */    rri0i0 = rr;    rri1i1 = rri0i0 + NB_POS;    rri2i2 = rri1i1 + NB_POS;    rri3i3 = rri2i2 + NB_POS;    rri0i1 = rri3i3 + NB_POS;    rri0i2 = rri0i1 + MSIZE;    rri0i3 = rri0i2 + MSIZE;    rri1i2 = rri0i3 + MSIZE;    rri1i3 = rri1i2 + MSIZE;    rri2i3 = rri1i3 + MSIZE; /*  * Extend the backward filtered target vector by zeros  */    for (i = SubFrLen; i < SubFrLen2; i++) Dn[i] = 0; /*  * Chose the sign of the impulse.  */    for (i=0; i<SubFrLen; i+=2) {        if( add(Dn[i],Dn[i+1]) >= 0) {            p_sign[i/2] = 1;        }        else {            p_sign[i/2] = -1;            Dn[i] = -Dn[i];            Dn[i+1] = -Dn[i+1];        }    }    p_sign[30] = p_sign[31] = 1; /*  *   Compute the search threshold after three pulses  */    /* odd positions */    /* Find maximum of Dn[i0]+Dn[i1]+Dn[i2] */    max0 = Dn[0];    max1 = Dn[2];    max2 = Dn[4];    for (i = 8; i < SubFrLen; i+=STEP) {        if (Dn[i]   > max0) max0 = Dn[i];        if (Dn[i+2] > max1) max1 = Dn[i+2];        if (Dn[i+4] > max2) max2 = Dn[i+4];    }    max0 = add(max0, max1);    max0 = add(max0, max2);    /* Find means of Dn[i0]+Dn[i1]+Dn[i2] */    L32 = 0;    for (i = 0; i < SubFrLen; i+=STEP) {        L32 = L_mac(L32, Dn[i], 1);        L32 = L_mac(L32, Dn[i+2], 1);        L32 = L_mac(L32, Dn[i+4], 1);    }    means =extract_l( L_shr(L32, 4));    /* thres = means + (max0-means)*threshold; */    thres = sub(max0, means);    thres = mult(thres, threshold);    thres = add(thres, means);    /* even positions */    /* Find maximum of Dn[i0]+Dn[i1]+Dn[i2] */    max0 = Dn[1];    max1 = Dn[3];    max2 = Dn[5];    for (i = 9; i < SubFrLen; i+=STEP) {        if (Dn[i]   > max0) max0 = Dn[i];        if (Dn[i+2] > max1) max1 = Dn[i+2];        if (Dn[i+4] > max2) max2 = Dn[i+4];    }    max0 = add(max0, max1);    max0 = add(max0, max2);    /* Find means of Dn[i0]+Dn[i1]+Dn[i2] */    L32 = 0;    for (i = 1; i < SubFrLen; i+=STEP) {        L32 = L_mac(L32, Dn[i], 1);        L32 = L_mac(L32, Dn[i+2], 1);        L32 = L_mac(L32, Dn[i+4], 1);    }    means =extract_l( L_shr(L32, 4));    /* max1 = means + (max0-means)*threshold */    max1 = sub(max0, means);    max1 = mult(max1, threshold);    max1 = add(max1, means);    /* Keep maximum threshold between odd and even position */    if(max1 > thres) thres = max1; /*  * Modification of rrixiy[] to take signs into account.  */    ptr_ri0i1 = rri0i1;    ptr_ri0i2 = rri0i2;    ptr_ri0i3 = rri0i3;    ptr1_ri0i1 = rri0i1;    ptr1_ri0i2 = rri0i2;    ptr1_ri0i3 = rri0i3;    for(i0=0; i0<SubFrLen/2; i0+=STEP/2) {        for(i1=2/2; i1<SubFrLen/2; i1+=STEP/2) {            *ptr_ri0i1++ = i_mult(*ptr1_ri0i1++,                                    i_mult(p_sign[i0], p_sign[i1]));            *ptr_ri0i2++ = i_mult(*ptr1_ri0i2++,                                    i_mult(p_sign[i0], p_sign[i1+1]));            *ptr_ri0i3++ = i_mult(*ptr1_ri0i3++,                                    i_mult(p_sign[i0], p_sign[i1+2]));        }    }    ptr_ri1i2 = rri1i2;    ptr_ri1i3 = rri1i3;    ptr1_ri1i2 = rri1i2;    ptr1_ri1i3 = rri1i3;    for(i1=2/2; i1<SubFrLen/2; i1+=STEP/2) {        for(i2=4/2; i2<SubFrLen2/2; i2+=STEP/2) {            *ptr_ri1i2++ = i_mult(*ptr1_ri1i2++,                                    i_mult(p_sign[i1], p_sign[i2]));            *ptr_ri1i3++ = i_mult(*ptr1_ri1i3++,                                    i_mult(p_sign[i1], p_sign[i2+1]));        }    }    ptr_ri2i3 = rri2i3;    ptr1_ri2i3 = rri2i3;    for(i2=4/2; i2<SubFrLen2/2; i2+=STEP/2) {        for(i3=6/2; i3<SubFrLen2/2; i3+=STEP/2)        *ptr_ri2i3++ = i_mult(*ptr1_ri2i3++, i_mult(p_sign[i2], p_sign[i3]));    } /*  * Search the optimum positions of the four  pulses which maximize  *     square(correlation) / energy  * The search is performed in four  nested loops. At each loop, one  * pulse contribution is added to the correlation and energy.  *  * The fourth loop is entered only if the correlation due to the  *  contribution of the first three pulses exceeds the preset  *  threshold.  */    /* Default values */    ip0    = 0;    ip1    = 2;    ip2    = 4;    ip3    = 6;    shif   = 0;    psc    = 0;    alpha  = 32767;    time   = add(max_time, extra);    /* Four loops to search innovation code. */    /* Init. pointers that depend on first loop */    ptr_ri0i0 = rri0i0;    ptr_ri0i1 = rri0i1;    ptr_ri0i2 = rri0i2;    ptr_ri0i3 = rri0i3;    /* first pulse loop  */    for (i0 = 0; i0 < SubFrLen; i0 += STEP) {        ps0  = Dn[i0];        ps0a = Dn[i0+1];        alp0 = *ptr_ri0i0++;        /* Init. pointers that depend on second loop */        ptr_ri1i1 = rri1i1;        ptr_ri1i2 = rri1i2;        ptr_ri1i3 = rri1i3;        /* second pulse loop */        for (i1 = 2; i1 < SubFrLen; i1 += STEP) {            ps1  = add(ps0, Dn[i1]);            ps1a = add(ps0a, Dn[i1+1]);            /* alp1 = alp0 + *ptr_ri1i1++ + 2.0 * ( *ptr_ri0i1++); */            alp1 = L_mult(alp0, 1);            alp1 = L_mac(alp1, *ptr_ri1i1++, 1);            alp1 = L_mac(alp1, *ptr_ri0i1++, 2);            /* Init. pointers that depend on third loop */            ptr_ri2i2 = rri2i2;            ptr_ri2i3 = rri2i3;            /* third pulse loop */            for (i2 = 4; i2 < SubFrLen2; i2 += STEP) {                ps2  = add(ps1, Dn[i2]);                ps2a = add(ps1a, Dn[i2+1]);

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合激情网...| 精品日韩成人av| 亚洲香蕉伊在人在线观| 色激情天天射综合网| 一区二区在线观看免费| 欧美亚男人的天堂| 日本中文字幕不卡| 2024国产精品| 99麻豆久久久国产精品免费优播| 中文字幕一区二区三中文字幕| 99精品视频在线免费观看| 亚洲一区二区三区美女| 制服丝袜av成人在线看| 黄色日韩三级电影| 中文字幕在线一区| 欧美无乱码久久久免费午夜一区| 免费成人小视频| 国产偷v国产偷v亚洲高清| 91麻豆免费看片| 日本欧美一区二区三区乱码| 久久免费看少妇高潮| jlzzjlzz亚洲女人18| 午夜国产精品影院在线观看| 精品电影一区二区三区| 97se亚洲国产综合自在线 | 久久久综合激的五月天| 91免费观看在线| 日韩国产在线一| 久久精品视频网| 色综合色狠狠天天综合色| 日韩精品乱码av一区二区| 久久日韩精品一区二区五区| 一本色道久久综合亚洲aⅴ蜜桃| 亚洲v精品v日韩v欧美v专区| 久久亚洲捆绑美女| 成人性生交大合| 五月婷婷久久综合| 国产精品久久久久精k8| 精品国产乱码久久久久久免费| 91视频www| 激情综合色综合久久综合| 亚洲欧美成人一区二区三区| 2021久久国产精品不只是精品| 99这里都是精品| 爽好久久久欧美精品| ...中文天堂在线一区| 日韩欧美国产一区二区在线播放| 国产成人在线看| 麻豆国产91在线播放| 亚洲精品水蜜桃| 精品国产乱子伦一区| 欧美久久久久久久久久| 国产一区二区在线观看免费 | 精品国产第一区二区三区观看体验| 色av综合在线| 国内成人自拍视频| 免费人成黄页网站在线一区二区| 亚洲欧美另类久久久精品2019| 欧美成人精精品一区二区频| 欧美视频一区二区三区四区| 91色.com| 99视频国产精品| 懂色av一区二区三区免费看| 美女在线观看视频一区二区| 五月婷婷欧美视频| 亚洲自拍欧美精品| 中文字幕亚洲在| 综合分类小说区另类春色亚洲小说欧美 | 欧美一级免费观看| 欧美中文字幕一区二区三区| 北条麻妃国产九九精品视频| 国产成人综合亚洲91猫咪| 精品一区二区久久久| 蜜臀a∨国产成人精品| 日韩成人免费看| 丝袜国产日韩另类美女| 亚洲一二三区在线观看| 亚洲欧美偷拍三级| 一区二区高清免费观看影视大全| 国产精品国产馆在线真实露脸| 国产欧美日韩亚州综合| 亚洲欧洲日本在线| 国产精品欧美一级免费| 亚洲欧洲色图综合| 一区二区三区电影在线播| 亚洲一区二区三区在线| 亚洲bt欧美bt精品| 久久成人免费日本黄色| 国产一区二区免费视频| 国产经典欧美精品| 成人av影视在线观看| 丁香网亚洲国际| aaa亚洲精品一二三区| 色综合久久中文字幕综合网| 欧美日韩性生活| 8x8x8国产精品| 久久午夜国产精品| 国产精品免费av| 亚洲精品国产成人久久av盗摄| 亚洲伊人伊色伊影伊综合网| 视频一区二区中文字幕| 久久99最新地址| 粉嫩aⅴ一区二区三区四区五区| 91麻豆免费看| 欧美一区二区视频在线观看| 26uuu亚洲综合色| 1024成人网色www| 午夜视频一区在线观看| 久久99在线观看| www.性欧美| 在线电影院国产精品| 久久久精品免费免费| 亚洲综合色区另类av| 青青青爽久久午夜综合久久午夜 | 国产电影一区二区三区| 欧美自拍偷拍午夜视频| 精品噜噜噜噜久久久久久久久试看 | 懂色av中文一区二区三区| 欧美三级日本三级少妇99| 久久久三级国产网站| 一区二区欧美在线观看| 狠狠v欧美v日韩v亚洲ⅴ| 99精品在线免费| 日韩你懂的电影在线观看| 亚洲欧洲三级电影| 精品一区精品二区高清| 色哟哟在线观看一区二区三区| 欧美一区二区三区免费在线看| 中文字幕中文字幕在线一区| 日本一道高清亚洲日美韩| 成人高清免费观看| 日韩久久精品一区| 一区二区三区精品视频| 激情五月播播久久久精品| 91成人网在线| 亚洲国产精品二十页| 日韩电影在线观看一区| 91久久精品网| 亚洲欧洲精品成人久久奇米网| 麻豆精品视频在线| 欧美精品九九99久久| 亚洲四区在线观看| 国产91精品精华液一区二区三区 | 性久久久久久久| 99在线精品一区二区三区| 欧美精品一区二区久久婷婷| 午夜欧美2019年伦理| 色综合久久99| 日韩一区欧美一区| 国产乱码精品一区二区三区五月婷| 欧美三级中文字幕在线观看| 国产精品国产自产拍高清av | 在线看日本不卡| 亚洲视频免费观看| 成人app下载| 久久久久久久久久久久久夜| 日本中文字幕一区二区视频| 欧美日韩亚洲丝袜制服| 亚洲美女区一区| av在线播放一区二区三区| 国产精品毛片a∨一区二区三区| 国产在线播放一区| 日韩一区二区电影| 麻豆91免费观看| 91精品国产91久久久久久最新毛片 | 色系网站成人免费| 亚洲欧美成人一区二区三区| bt欧美亚洲午夜电影天堂| 国产色一区二区| 成人av在线网站| 亚洲日本欧美天堂| 色狠狠桃花综合| 亚洲a一区二区| 欧美日韩午夜在线视频| 亚洲成人久久影院| 正在播放一区二区| 蜜臀av性久久久久蜜臀aⅴ| 日韩精品一区二区三区视频播放| 久久精品国产亚洲aⅴ| 久久婷婷国产综合精品青草| 国产精品一区在线| 国产精品色一区二区三区| 91在线看国产| 调教+趴+乳夹+国产+精品| 日韩精品一区二区三区四区视频| 国内精品国产成人国产三级粉色| 日本一区二区三区久久久久久久久不 | 国产精品久久99| 欧美视频在线观看一区二区| 日韩和欧美一区二区三区| 久久久亚洲精品一区二区三区| 成人免费不卡视频| 亚洲一区二区三区四区不卡| 日韩视频一区二区三区| 国产精品1区2区| 亚洲国产美国国产综合一区二区| 91精品国产91综合久久蜜臀| 丰满亚洲少妇av| 婷婷六月综合亚洲| 国产午夜精品久久|