瀏覽代碼

cmProc.h/c : Added kSlRejIsBetaWndFl for use in cmWndFuncInit().

master
Kevin Larke 9 年之前
父節點
當前提交
72bfc7442f
共有 2 個文件被更改,包括 9 次插入2 次删除
  1. 7
    1
      cmProc.c
  2. 2
    1
      cmProc.h

+ 7
- 1
cmProc.c 查看文件

@@ -443,7 +443,13 @@ cmRC_t      cmWndFuncInit(  cmWndFunc* p, unsigned wndId, unsigned wndSmpCnt, do
443 443
     case kUnityWndId:      cmVOS_Fill(       p->wndV, p->outN, 1.0 ); break;
444 444
     case kKaiserWndId:    
445 445
       {
446
-        double beta = cmVOS_KaiserBetaFromSidelobeReject(fabs(kslRejectDb));
446
+        double beta;
447
+        
448
+        if( cmIsFlag(wndId,kSlRejIsBetaWndFl) )
449
+          beta = kslRejectDb;
450
+        else
451
+          beta = cmVOS_KaiserBetaFromSidelobeReject(fabs(kslRejectDb));
452
+        
447 453
         cmVOS_Kaiser( p->wndV,p->outN, beta); 
448 454
       }
449 455
       break;

+ 2
- 1
cmProc.h 查看文件

@@ -158,7 +158,8 @@ extern "C" {
158 158
     kWndIdMask       = 0x0ff,      
159 159
 
160 160
     kNormByLengthWndFl = 0x100,  // mult by 1/wndSmpCnt 
161
-    kNormBySumWndFl    = 0x200   // mult by wndSmpCnt/sum(wndV)
161
+    kNormBySumWndFl    = 0x200,  // mult by wndSmpCnt/sum(wndV)
162
+    kSlRejIsBetaWndFl  = 0x400   // kaiserSideLobeRejectDb param. is actually kaiser beta arg. 
162 163
   };
163 164
 
164 165
   typedef struct

Loading…
取消
儲存