Этот проект в CodeProject может быть полезен вам, так как он находится в C # и имеет дело с обработкой звука по алгоритму Cooley-Turkey FFT.
Если вы не хотите просеивать его, то здесь бит от комплексного числа:
byte[] data = yourByteArray;
double[] x = new double[data.Length];
for (int i = 0; i < x.Length; i++)
{
x[i] = data[i] / 32768.0;
}
ComplexNumber[] data = new ComplexNumber[length];
for (int i = 0; i < x.Length; i++)
{
data[j] = new ComplexNumber(x[i]);
}
Я не очень разбираюсь в обработке звука, поэтому не знаю, является ли деление на 32768 уникальным для этого решения или истинным в целом.
Кроме того, хотя это будет на 100% точно, я не знаю, насколько хорошо это работает. Если это станет проблемой, вам может понадобиться рефакторинг.