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

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

?? pitch.dsp

?? 作者:Analog Devices,Inc 平臺:ADSP21xx 編程語言:ASM 說明:ADSP21xx用AD的16位定點DSP作音頻壓縮器性價比不錯
?? DSP
字號:
.module/boot=3/boot=4        pitch_detection; 

{ PITCH.DSP - extracts the pitch period, and makes a 
              voiced/unvoiced decision.

  INPUT:
    i0 -> k[N]
    l0 =  0
    i6 -> autocor_speech[FRAME_LENGTH]
    l6 =  0
  
  OUTPUT:
    si = pitch (= 0 if unvoiced)
   
  CONST:
    PITCH_DETECT_LENGTH = part of frame used for pitch detection
                           starting at 3 msec.

    mSEC_3 = sample to start pitch detection at

  FUNCIOTNS CALLED:
    None

  DESCRIPTION:
    The k's are autoscaled, and then autocorrelated. The new values are
    correlated with the autocorrelated speech R[]. The resulting sequence
    is searched for the largest peak in the interval
      mSEC_3 .....  mSEC_3+PITCH_DETECT_LENGTH

    Depending on the relative size of the peak (to re[0]), a decision of 
    voiced/unvoiced is made. In case of voiced the location is equal to
    the pitch period.
}

{Include constant definition}
#include "lpc.h"

.entry    detect_pitch;

.external overflow;

.var/dm   rk[N];             {autocorrelation of k[]}
{.var/pm   re[FRAME_LENGTH];}  {cross correlation of R[] and rk[]}
.var/dm   k_dm[N];           {scratch copy's of k}
.var/dm   p2_k;
.var/dm   p2_autocor_speech;
.var/dm   zero_crossings;    {in re[]}


detect_pitch:

 {store pointers for later use}
  dm(p2_k) = i0;
  dm(p2_autocor_speech) = i6;
  
 {autoscale befored autocorrelation}
 {detect largest value in k's}  
 {i0 = ^k;     l0 = 0;} 
  cntr = N;
  sb = -16;
  do max_k until ce;
    si = dm(i0,m1);
  max_k: sb = expadj si;

 {adjust k input: normalize to largest and then right shift
  to |P_K_SHIFT|.(16-|P_K_SHIFT|) format (done in one shift).
  At the same time copy to pm for correlation}
  i0 = dm(p2_k);    l0 = 0; 
  i1 = ^k_dm;       l1 = 0; 
  cntr = N;
  ax0 = sb;
  ay0 = P_K_SHIFT;  {scale down to avoid overflow (worst case)}
  ar = ay0 - ax0;
  se = ar;
  do adj_k until ce;
    si = dm(i0,m1);
    sr = ashift si (hi);
  adj_k: dm(i1,m1) = sr1;

  {calculate autocorrelation of k[], rk[i] = sum_of k[j]*k[i+j]}
  i5 = ^k_dm;    l5 = 0;  {k[i+j]}
  i2 = N;        l2 = 0;  {innerloop counter 'refill'}
  i1 = ^rk;      l1 = 0;  
  m2 = -1;
  cntr = N;
  do corr_loop until ce;
    i0 = ^k_dm;   l0 = 0; {k[j]}
    i4 = i5;      l4 = 0;
    cntr = i2;
    mr=0, my0 = dm(i4,m5);
     mx0=dm(i0,m1);
    do cor_data_loop until ce;
      mr=mr+mx0*my0(ss),my0=dm(i4,m5);
    cor_data_loop:      mx0=dm(i0,m1);
    if mv call overflow;
    mx0 = dm(i2,m2); 
     my0 = dm(i5,m5); {(innerloop cnt'er)--, i++}
  corr_loop: dm(i1,m1) = mr1;

 {shift down R[] (autocor_speech) to |P_R_SHIFT|.(16-|P_R_SHIFT|) format}
  cntr = FRAME_LENGTH;
 {i6 = ^autocor_speech;   l6 = 0;}
  do shft_ac until ce;
    si = pm(i6,m4);
    sr = ashift si by P_R_SHIFT (hi);
  shft_ac:  pm(i6,m5) = sr1;


  {Setup rk[] and R[] (autocor_speech) for correlation.
   Only calculate the necessary correlation coefficients, equivalent 
   to the 0-15 ms portion of the frame (samples 0-120 (out of 160),
   re(0) is necesary for later voiced/unvoiced calc}
  { re[i] = sum_of(rk[j]*R[i+j]) }
  
  i5 = dm(p2_autocor_speech);   l5 = 0;  {R[i+j]}
  i2 = N;                       l2 = 0;
  i6 = dm(p2_autocor_speech);   l6 = 0;  
  ay0 = 0;              {last 'sign' for zerocrossing count}
  af  = pass ay0;       {zerocrossing counter}
  cntr = PITCH_DETECT_LENGTH + mSEC_3;  {0-15 msec}
  {correlate rk's and R's}
   do cor_loop until ce;
     i0 = ^rk; l0 = 0;     {rk[j]}
     i4 = i5;  l4 = 0;
     cntr=i2;
     mr=0, my0=pm(i4,m5), mx0=dm(i0,m1);
     do cor_inner_loop until ce;
     cor_inner_loop: mr=mr+mx0*my0(ss),my0=pm(i4,m5),mx0=dm(i0,m1);
     
     ar = mr1 xor ay0;  {test for sign switch = zerocrossing}
     if ge jump no_crossing;
       af  = af + 1;    {inc zerocrossing counter}  
       ay0 = mr1;       {store new sign}
     no_crossing:
     
     modify(i5,m5);        {i++}
   cor_loop: pm(i6,m5) = mr1;
   ar = pass af;
   i5 = ar; {zerocrossing count}

  {find the largest peak in range 3-15 msec. The index of the largest 
   peak is equal to the pitch period. At the same time count the 
   nr of zerocrossings in re[]}

  si  = 0;       {store for pitch of max peak}
  ay1 = 0;       {store for value of max peak}
  i6  = dm(p2_autocor_speech);  l6 = 0;
  ax0 = pm(i6,m4);     {save re(0) for voiced/unvoiced check}
  m7  = mSEC_3;
  modify(i6,m7);       {-> re(mSEC_3)}
  i2  = mSEC_3;  l2 = 0; {pitch counter}
  cntr = PITCH_DETECT_LENGTH;
  do find_max_peak until ce;
    ax1 = pm(i6,m5);   {re[j]}
    ar  = ax1 - ay1;   {re[j] > max?} 
    if le jump not_bigger;
      ay1 = ax1;       {new max value}
      si = i2;         {corresponding pitch value}
    not_bigger: 
    nop;
  find_max_peak: modify(i2,m1);  {(pitch period cnt'er)++}

  {Check for voiced/unvoiced excitation. If unvoiced set pitch = 0}
   {ax0 = re(0)}
   {ay1 = MSW of peakvalue}
  ay0 = 0000;      {LSB of peakvalue}
  divide(ax0,ay1); {ay0 = re[peak]/re[0]}
  ax0 = i5;        {nr of zerocrossings in re[]}
  ay1 = 70;  
  ar = ax0 - ay1;  {i5>treshold => unvoiced}
  if ge jump not_voiced; 
  ax1 = 0x1999;    {= 0.20}
  ar  = ay0 - ax1; {re(j)/re(0) - 0.20}
  if lt jump not_voiced; 
  ax1 = 0x2666;    {= 0.30}
  ar  = ay0 - ax1; {re(j)/re(0) - 0.30}
  if gt jump frame_voiced; 
  ay1 = 60;        
  ar = ax0 - ay1;  {i5>treshold => unvoiced}
  if lt jump frame_voiced;
  not_voiced:
    si = 0;        {unvoiced => pitch period = 0}
    i0 = dm(p2_k);  l0 = 0; {zero out k5 - k10 for unvoiced speech}
    m3 = 4;
    modify(i0,m3);
    ax0 = 0;
    cntr = 6;
    do zero_ks until ce;
    zero_ks:  dm(i0,m1) = ax0;
  frame_voiced:

rts;

.endmod;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三级一区二区| 日韩欧美色综合| 国产一区欧美日韩| 亚洲成人综合网站| 一区二区三区日韩精品视频| 欧美韩日一区二区三区四区| 久久久九九九九| 欧美国产日韩一二三区| 国产欧美日韩精品在线| 久久在线免费观看| 国产欧美久久久精品影院| 国产精品久久久久久久第一福利 | 欧美日韩亚洲综合在线 | 欧美吻胸吃奶大尺度电影| 一本色道久久综合狠狠躁的推荐| 99精品久久久久久| 欧美日韩一区成人| 欧美不卡视频一区| 日本一区二区不卡视频| 一色屋精品亚洲香蕉网站| 亚洲精品成人在线| 午夜一区二区三区视频| 秋霞av亚洲一区二区三| 国产一区二区三区精品欧美日韩一区二区三区 | 国产精品区一区二区三| 1区2区3区欧美| 午夜伦理一区二区| 国产在线视频不卡二| 99精品国产视频| 7777精品久久久大香线蕉| 精品国产一区二区三区不卡| 国产精品美女久久久久久| 一区二区三区高清在线| 日韩黄色片在线观看| 国产福利精品一区| 91精品1区2区| 精品国产乱码久久久久久夜甘婷婷 | 亚洲高清中文字幕| 激情图片小说一区| 在线观看一区不卡| 精品国产123| 中文字幕一区二区5566日韩| 日韩福利电影在线| 91片黄在线观看| 精品成a人在线观看| 一区av在线播放| 国产激情精品久久久第一区二区 | 精品亚洲国产成人av制服丝袜 | 欧美性色黄大片| 久久精品欧美日韩| 石原莉奈在线亚洲二区| 北条麻妃国产九九精品视频| 欧美大黄免费观看| 亚洲一区二区三区美女| 大桥未久av一区二区三区中文| 91精品国产手机| 一级女性全黄久久生活片免费| 国产精品一二三区| 日韩欧美aaaaaa| 午夜不卡在线视频| 欧美午夜精品一区二区三区| 国产精品女上位| 国产精品一区二区91| 欧美一级片在线看| 午夜视频一区二区| 欧洲一区在线电影| 亚洲欧美二区三区| 97精品国产露脸对白| 中文一区在线播放 | 中文字幕永久在线不卡| 高清久久久久久| 久久精品一区八戒影视| 九九视频精品免费| 久久综合成人精品亚洲另类欧美 | 另类小说色综合网站| 欧美日韩高清影院| 日韩影院在线观看| 91精品国产综合久久香蕉麻豆 | 欧美激情一区三区| 美美哒免费高清在线观看视频一区二区 | 亚洲成人久久影院| 欧美日韩一区不卡| 亚洲高清在线视频| 91精品国产色综合久久久蜜香臀| 婷婷开心激情综合| 日韩小视频在线观看专区| 久久99精品国产| 国产情人综合久久777777| 国产精品自拍av| 一区在线播放视频| 日本国产一区二区| 首页欧美精品中文字幕| 色婷婷久久久亚洲一区二区三区| 国产精品一区二区91| 久久综合色综合88| 国产mv日韩mv欧美| 一区二区三区日韩在线观看| 欧美日韩国产在线播放网站| 日本午夜一区二区| 国产婷婷一区二区| 欧美专区在线观看一区| 日本aⅴ免费视频一区二区三区| 精品福利一区二区三区| 成人免费毛片aaaaa**| 亚洲精品成人天堂一二三| 欧美一区国产二区| 成人激情小说乱人伦| 亚洲一区二区在线播放相泽| 欧美不卡在线视频| 91视视频在线直接观看在线看网页在线看| 一区二区三区av电影| 日韩欧美二区三区| 日本91福利区| 午夜精品福利一区二区三区蜜桃| 国产风韵犹存在线视精品| 亚洲视频在线观看一区| 欧美一区二区成人| 91色乱码一区二区三区| 日韩成人免费电影| 成人欧美一区二区三区| 91麻豆精品国产91久久久资源速度 | 91精品国产91久久久久久一区二区 | 欧美日韩视频不卡| 国产成人精品免费视频网站| 亚洲第一成人在线| 综合av第一页| 国产午夜一区二区三区| 欧美日韩在线播放| 99久久精品国产毛片| 久久99国产精品久久| 亚洲永久精品国产| 国产精品福利在线播放| 久久人人超碰精品| 日韩一区二区不卡| 欧美日韩高清一区| 色94色欧美sute亚洲线路二| 国产成人免费高清| 精久久久久久久久久久| 午夜久久福利影院| 亚洲一区二区三区在线播放| 国产精品你懂的在线| 久久久久久久久岛国免费| 日韩视频免费直播| 欧美人牲a欧美精品| 欧美性色综合网| 欧美亚男人的天堂| 精品视频全国免费看| 色天天综合久久久久综合片| av福利精品导航| 成人黄色软件下载| 成人丝袜高跟foot| 成人免费高清在线观看| 成人综合婷婷国产精品久久| 国产xxx精品视频大全| 国产高清久久久久| 成人蜜臀av电影| 99精品久久99久久久久| 91蝌蚪porny| 91国在线观看| 欧美高清视频不卡网| 欧美日韩久久一区| 91精品国产全国免费观看| 欧美一级欧美三级在线观看| 日韩欧美中文字幕精品| 亚洲精品在线观看视频| 久久久久97国产精华液好用吗| 国产调教视频一区| **性色生活片久久毛片| 亚洲图片欧美视频| 久久精品久久综合| 成人免费视频视频在线观看免费| 不卡影院免费观看| 欧美性一二三区| 日韩你懂的在线播放| 国产日韩成人精品| 一区二区三区国产| 另类小说一区二区三区| 成人黄页毛片网站| 欧美日韩国产经典色站一区二区三区| 日韩一区二区三区电影| 久久精品一区八戒影视| 樱桃国产成人精品视频| 老司机精品视频线观看86| 国产91丝袜在线18| 欧美日产国产精品| 久久奇米777| 亚洲在线观看免费视频| 国产乱人伦精品一区二区在线观看| 国产成人综合在线观看| 在线视频国内自拍亚洲视频| 欧美一区二区久久久| 国产精品久久夜| 男男gaygay亚洲| 99国产精品久| 欧美www视频| 一区二区三区不卡在线观看| 国产一区在线看| 欧美精品v日韩精品v韩国精品v| 中文字幕va一区二区三区| 青草av.久久免费一区|