Я прочитал все статьи в Википедии и статьи stackoverflow о fft и разрешении. Однако ничто не помогло научиться получать частоту с высоким разрешением без огромных проблем с задержкой.
Если я правильно понимаю обработку сигнала:
У меня частота дискретизации 44 100, и я беру 256 блоков. Тогда разрешение по частоте будет 44 100/2/256 = 86,1 Гц на элемент разрешения по частоте с БПФ.
Постоянно вижу примеры вроде http://www.tunelab-world.com/ и http://www.spectraplus.com/, которые способны определять частоту до 0,01 Гц.
Если бы я сделал это с помощью описанного выше метода, мне бы потребовалось 4410 000 бинов, чтобы получить такое разрешение. При частоте дискретизации 44 100 потребуется 100 секунд для заполнения входных данных.
Я знаю, что мне чего-то не хватает, но я не могу понять, что.
Как я могу получить сигнал, а затем нарисовать график или отобразить частоту пика с такой точностью, не беря миллиарды ячеек и не ожидая бесконечно?
Заранее спасибо за вашу помощь!