Определите звуковую частоту звука, полученного через микрофон
Я пытаюсь понять, как определить частоту различных звуков, записанных на телефоне через микрофон.
Я пытаюсь отобразить график, показывающий частоту заметки.
2 ответа
"Ноты", создаваемые большинством музыкальных инструментов, могут содержать спектральный контент на большом количестве частот. Кроме того, частотный спектр "ноты" может содержать или не содержать значительные пики, которые человек назвал бы музыкальной высотой ноты. Так что вы можете даже не задавать правильный вопрос.
Есть больше комментариев по этой проблеме в одном ответе на этот вопрос stackru.
Спектрограф (с помощью многократного использования БПФ или другого банка фильтров) является распространенным методом для отображения в графической форме графика, отображаемого по времени, частот, содержащихся в захваченном звуке, с компромиссом между временной характеристикой и частотным разрешением.
Пример кода спектрографа в образце приложения Apple aurioTouch доступен на веб-сайте iOS Developer.
Запишите аудиопоток и посчитайте количество пересечений нуля. Это должно дать вам частоту. Но осторожно выбирайте подходящую частоту дискретизации.