Визуализатор звука и поиск частоты.
Визуализатор звука и поиск частоты.
Здравствуйте. Я сделал программу, которая визуально демонстрирует обработку сигнала. Звук захватывается с "устройства по умолчанию", микрофон в ноутбуке. К нему применяется простой фильтр - скользящее среднее. Затем накладывается оконная функция. И потом применяю преобразование Фурье. Из полученного спектра ищу самую сильную (громкую) частоту. По трём точкам нахожу вершину параболы и её принимаю за точное значение.
Код - https://github.com/Remeslennik/SoundVisualiser
Сборка - https://cloud.mail.ru/public/841bd9de83 ... Visualiser
Скриншоты
Синусоида 1000 Гц, звучит из колонок и сразу попадает на микрофон.
Голос, буква А с основным тоном 220 Гц (указано курсором)
Прошу специалистов оценить, правильно ли я всё делаю? Что изменить? Чего не хватает?
Код - https://github.com/Remeslennik/SoundVisualiser
Сборка - https://cloud.mail.ru/public/841bd9de83 ... Visualiser
Скриншоты
Синусоида 1000 Гц, звучит из колонок и сразу попадает на микрофон.
Голос, буква А с основным тоном 220 Гц (указано курсором)
Прошу специалистов оценить, правильно ли я всё делаю? Что изменить? Чего не хватает?
- Бахурин Сергей
- Администратор
- Сообщения: 1116
- Зарегистрирован: 05 окт 2010, 19:55
- Контактная информация:
Re: Визуализатор звука и поиск частоты.
ну с точки зрения оценки частоты вроде все вполне корректно. С точки зрения приложения данного метода к анализу звука то надо понимать задачу. Лично я к сожалению бесконечно далек от музыки и мне сложно судить как это должно правильно работать.
- Santik
- Сообщения: 609
- Зарегистрирован: 28 дек 2010, 08:04
- Откуда: Мирный (Якутия)
- Контактная информация:
Re: Визуализатор звука и поиск частоты.
Скриншоты не открываются, поэтому прокомментировать не могу...
На этом сайте можно посмотреть
http://dsplib.ru/forum/viewtopic.php?f=7&t=115&start=40
и
http://dsplib.ru/forum/viewtopic.php?f=7&t=168
На этом сайте можно посмотреть
http://dsplib.ru/forum/viewtopic.php?f=7&t=115&start=40
и
http://dsplib.ru/forum/viewtopic.php?f=7&t=168
- Santik
- Сообщения: 609
- Зарегистрирован: 28 дек 2010, 08:04
- Откуда: Мирный (Якутия)
- Контактная информация:
Re: Визуализатор звука и поиск частоты.
"Визуализатор" звука. Голос. Гласные.
Re: Визуализатор звука и поиск частоты.
Пришлось обрезать скрин по требованию форума. Буква "а". Наглядно видно, что есть куча гармоник (самая громкая справа) а основная частота около 100 Гц (указана слева курсором).
- Santik
- Сообщения: 609
- Зарегистрирован: 28 дек 2010, 08:04
- Откуда: Мирный (Якутия)
- Контактная информация:
Re: Визуализатор звука и поиск частоты.
Хотелось бы исходник (wav). Только его заархивировать придётся (по требованиям форума).
Re: Визуализатор звука и поиск частоты.
Дак нет исходника. Всё через микрофон работает.
- Santik
- Сообщения: 609
- Зарегистрирован: 28 дек 2010, 08:04
- Откуда: Мирный (Якутия)
- Контактная информация:
Re: Визуализатор звука и поиск частоты.
Исходник:
- Santik
- Сообщения: 609
- Зарегистрирован: 28 дек 2010, 08:04
- Откуда: Мирный (Якутия)
- Контактная информация:
Re: Визуализатор звука и поиск частоты.
Обведены кругом ноты, сыгранные в этом такте (кроме нижнего D# - из предыдущего такта)
Re: Визуализатор звука и поиск частоты.
Да. Хоть гитара и синтетическая, смысл сонограмма передаёт верно.
В первом варианте анализатора звук пятой струны (все басовые ноты) плохо распознавался. Получалось, что гармоника звучала громче основного тона. Сделал определение ноты по двум гармоникам. Стало лучше, но не распознавало самые две-три низкие ноты (шестая струна на 2 ладу). Из-за этого решил сделать визуализатор, чтоб видно было. (хотя ещё есть сайт подобный - http://ispectrometer.com/) С шестой струной совсем беда, основной частоты почти вообще нет, а есть целая куча гармоник. Ну а с голосом чуть ли не 10 гармоник появляется при одной ноте.
Ещё хочу нарисовать огибающую кривую по отсчётам. Как посоветуете просчитать промежуточные значения? Мне на ум приходит только использовать Фарроу из соседней темы.
В первом варианте анализатора звук пятой струны (все басовые ноты) плохо распознавался. Получалось, что гармоника звучала громче основного тона. Сделал определение ноты по двум гармоникам. Стало лучше, но не распознавало самые две-три низкие ноты (шестая струна на 2 ладу). Из-за этого решил сделать визуализатор, чтоб видно было. (хотя ещё есть сайт подобный - http://ispectrometer.com/) С шестой струной совсем беда, основной частоты почти вообще нет, а есть целая куча гармоник. Ну а с голосом чуть ли не 10 гармоник появляется при одной ноте.
Ещё хочу нарисовать огибающую кривую по отсчётам. Как посоветуете просчитать промежуточные значения? Мне на ум приходит только использовать Фарроу из соседней темы.