Хорошо, тогда вам нужно прочитать еще немного об алгоритмах обнаружения высоты тона. Есть несколько способов сделать это. Здесь есть несколько связанных вопросов, но я не прочитал их, чтобы понять, насколько они заслуживают. Автокорреляция - это временная область, хотя вы можете вычислить ее с помощью БПФ. Проблема в том, что computeSpectrum () не возвращает полные значения FFT. Скорее всего, вам понадобится вычислить БПФ с использованием необработанных данных или рассчитать автокорреляции во временной области, используя необработанные данные.

рабатываю с использованием Actionscript 3.0 для Flash Player 10.3я используюcomputeSpectrum () на загруженном .mp3Запуск * Event.ENTER_FRAME * для получения снимков каждого образца в byteArrayByteArray содержит 512 значений (256 для каждого канала). Эти значения представляют собой БПФ-Спектр в диапазоне от 0 до 1.Я не могу использовать пиковую частоту для каждого из образцов (как я выяснил!), Потому что самое высокое значение не обязательно является основной частотой! В результате я получаю много случайных значений повсюду! Конечно, я тоже получаю некоторые правильные данные, но этого недостаточно!

Я узнал оавтокорреляция...
Может кто-нибудь дать мне пример того, как я мог бы это использовать?

Или ссылки, или примеры сценариев даже из других языков сценариев, чтобы получить контроль над этим?

С уважением
initcode

Ответы на вопрос(4)

Ваш ответ на вопрос