Понимание БПФ в aurioTouch2

Я смотрел aurioTouch 2 из примера кода Apple ( здесь ). В конце концов, я хочу сам проанализировать частоты. А пока я пытаюсь понять кое-что из того, что здесь происходит. Приношу свои извинения, если это тривиально, просто пытаюсь понять некоторые из раскомментированных магических чисел, плавающих в каком-то источнике. Сейчас я больше всего не понимаю, что вызывает недоумение:

  1. Почему они обнуляют значение Найквиста в FFTBufferManager :: ComputeFFT? Неужели это значение просто выбросить? (~ строка 112 файла FFTBufferManager.cpp).
  2. Они уменьшают все на -128 дБ, поэтому я предполагаю, что результаты находятся в диапазоне (-128, 0). Однако позже в aurioTouchAppDelegate.mm (~ строка 807) они преобразовали это в значение от 0 до 1, добавив 80 и разделив на 64, а затем зафиксировав 0 и 1. Почему такая нечеткость? Кроме того, правильно ли я предполагаю, что значения будут в районе (-128, 0)?

12
задан Francisco Ryan Tolmasky I 13 January 2012 в 03:29
поделиться