yansheng.wang

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

音符半倍频规整

提取基频时,半倍频普遍出现,对此必须做好半倍频规整  
 
inline float normalize_pitch(float pitch, float temp)
{
    float half = fabs(pitch - 12 - temp);
    float twice = fabs(pitch + 12 - temp);
    float self = fabs(pitch - temp);    

    if (half < twice && half < self)
    {
        return pitch - 12;
    }
    else if (twice < half && twice < self)
    {
        return pitch + 12;
    }
}
posted on 2012-06-12 08:46  小小程序员001  阅读(210)  评论(0)    收藏  举报