- Apple 설명서에서 FFT 샘플 코드를 사용하는 동안 실제로 N, log2n, n 및 nOver2는 무엇을 의미합니까?
- N은 주어진 오디오의 fft 또는 샘플 수의 창 크기를 참조합니까?
- 오디오 파일에서 N을 어떻게 계산합니까?
- 오디오 샘플링 속도, 즉 44.1kHz와 어떻게 관련이 있습니까?
- 이 코드에서 FFT 프레임 크기는 어떻게됩니까?
코드 :실제로 FFT 크기의 의미
/* Set the size of FFT. */
log2n = N;
n = 1 << log2n;
stride = 1;
nOver2 = n/2;
printf("1D real FFT of length log2 (%d) = %d\n\n", n, log2n);
/* Allocate memory for the input operands and check its availability,
* use the vector version to get 16-byte alignment. */
A.realp = (float *) malloc(nOver2 * sizeof(float));
A.imagp = (float *) malloc(nOver2 * sizeof(float));
originalReal = (float *) malloc(n * sizeof(float));
obtainedReal = (float *) malloc(n * sizeof(float));
문제의 코드가'log2n = N'을 포함하고 있다고 가정하면'log2N'은'N'의 로그입니다. –
@EricPostpischil : 다음 줄을보십시오. N에 의한 시프트는 2의 거듭 제곱에 해당합니다. 즉, N은 n의 이중 로그입니다. – Matthias
대답의 텍스트에 " 'N'은 샘플의 수입니다." 문제의 코드에서 'n'은 샘플 수이지만 'N'은 아니며 'log2N'은 'N'의 로그가 아니며 'Nover'의 절반도 아닙니다.나는 다른 코드의 일반적인 사용법은 'N'이 샘플의 수라는 것을 이해하지만, 단순히 질문의 코드에 해당하지 않는다. 즉,이 대답에는 잘못된 문장이 포함되어있다. –