2016-03-04 15 views
0

如何將kiss fft庫添加到visual studio 2012項目中? 因爲我想編譯此代碼:如何在Visual Studio 2012中添加kiss fft並確保已添加?

#include "kiss_fft.h" 
#include "kiss_fftr.h" 

kiss_fft_cpx* copycpx(float *mat, int nframe) 
{ 
    int i; 
    kiss_fft_cpx *mat2; 
    mat2=(kiss_fft_cpx*)KISS_FFT_MALLOC(sizeof(kiss_fft_cpx)*nframe); 
     kiss_fft_scalar zero; 
     memset(&zero,0,sizeof(zero)); 
    for(i=0; i<nframe ; i++) 
    { 
     mat2[i].r = mat[i]; 
     mat2[i].i = zero; 
    } 
    return mat2; 
} 

int main(void) 
{ 
    int i,size = 12; 
    int isinverse = 1; 
    float buf[size]; 
    float array[] = {0.1, 0.6, 0.1, 0.4, 0.5, 0, 0.8, 0.7, 0.8, 0.6, 0.1,0}; 

    kiss_fft_cpx out_cpx[size],out[size],*cpx_buf; 

    kiss_fftr_cfg fft = kiss_fftr_alloc(size*2 ,0 ,0,0); 
    kiss_fftr_cfg ifft = kiss_fftr_alloc(size*2,isinverse,0,0); 

    cpx_buf = copycpx(array,size); 
    kiss_fftr(fft,(kiss_fft_scalar*)cpx_buf, out_cpx); 
    kiss_fftri(ifft,out_cpx,(kiss_fft_scalar*)out); 

    printf("Input: tOutput:n"); 
    for(i=0;i<size;i++) 
    { 
    buf[i] = (out[i].r)/(size*2); 
    printf("%ft%fn",array[i],buf[i]); 
    } 

    kiss_fft_cleanup(); 
    free(fft); 
    free(ifft); 
    return 0; 
} 

回答

0

我創建了第二個項目,我的解決方案中,並手動添加的kiss_fft源文件。然後我告訴Visual Studio,我自己的項目依賴於kiss_fft項目。

要做到這一點,你需要做兩件事(MSVC++在這裏不是很聰明)。使用解決方案資源管理器,右鍵單擊您的項目並選擇「Build Dependencies」,此菜單中包含「項目依賴項」。這是簡單的。第二步很難找到:右鍵單擊你的項目,這次打開屬性對話框。最上面的組「通用屬性」包含「通用屬性>參考」,在這裏您必須「添加新參考」到kissfft。

相關問題