2016-12-06 11 views
0

Я записал звук, охватывающий несколько секунд и содержащий два одинаковых тона, сгенерированных с одинаковой частотой. Они находятся на расстоянии нескольких секунд друг от друга. То, что я хотел бы сделать, это обнаружить конец первого тона и начало второго тона с точки зрения количества выборок, кроме того, что они предназначены для этого аудиофайла. Предположим, что 16-битный подписанный PCM с аудиосигналом 48 кГц и массив байтов представляют собой исходный звук.Обнаружение определенных частот/тонов в необработанном звуке (PCM)

Я борюсь за то, как я могу понять это;

а) Выполнить ДПФ, чтобы обнаружить возникновение определенной частоты тона

б) Поскольку два тона является самым громким, так или иначе, выяснить пики и где они начинают/конец для двух тонов

с) Запуск аудио файл через полосовой фильтр, чтобы отфильтровать все другие частоты, я потенциально будет в конечном итоге с двумя линиями, или два ненулевых сегментов в массиве

Что является самым простым способом (не стесняйтесь предлагать другие методы)?

ответ

0

Запуск образцов с помощью Fast Fourier Transform, соответствующих ожидаемым частотам в пределах определенного допуска, а затем подсчет количества выборок между ними, когда они не совпадают?

+0

Является ли это по существу использованием ответа/ресурсов из http://stackoverflow.com/questions/17429407/get-frequency-wav-audio-using-fft-and-complex-class? Спасибо –

+0

Не совсем уверен. Я просто надеялся, что смогу подтолкнуть вас в возможном направлении. –

+0

Мне удалось получить БПФ, работающий по сигналу из приведенной выше ссылки. Это массив реальных/мнимых чисел. Я могу найти величины на частоту. Учитывая массив FFT и это абсолютный сигнал, как бы я выводил информацию о частоте на основе номера образца? –

 Смежные вопросы

  • Нет связанных вопросов^_^