Просмотр исходного кода

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

master
Kevin Larke 9 лет назад
Родитель
Сommit
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

Загрузка…
Отмена
Сохранить