2016-07-21 6 views
0

Какие типы API или фреймворки используются для назначения ноты музыки? Например, как приложение вроде Shazzam возьмет записку от микрофона и знает, что с ним делать? Для меня это потрясающий телефонный микрофон, и какая-то изящная логика может конкурировать с тюнером из музыкального магазина!Каковы принципы акустической отпечатки пальцев?

Редактировать 1.

Интересные документы на эту тему. Программное обеспечение Shazzam в знак признания приложения Музыка опирается на принцип Acoustic fingerprinting и Fast Fourier Transform

Вот пример похожий код в practice

ответ

2

Акустические алгоритмы отпечатков пальцев не пытаются анализировать музыку. То есть, они не конвертируют звук из микрофона в ноты. Они извлекают из аудио какие-то произвольные функции, которые не имеют большого смысла с точки зрения музыкальной теории, но они по-прежнему полезны для идентификации музыки.

Обычно вы начинаете с спектрограммы. Спектрограмма представляет собой анализ частот по мере их изменения во времени. Это характерно для почти всех алгоритмов акустической отпечатки пальцев. Различие в том, что они делают со спектрограммой и какие функции они извлекают из нее. Некоторые алгоритмы ищут пики в спектрограмме, некоторые чередуют ее на регулярные интервалы. Конечной целью обычно является создание кучи хэшей, которые вы можете индексировать и быстро искать.

Оригинальный алгоритм Shazam от Avery Li-Chun Wang является общедоступным. Вы можете найти детали here.

0

короткого и простого объяснения.

шаг 1. Анализ оригинальной частоты всех композиций файла с помощью FFT

шаг 2. сделать правильную структуру дерева данных с предварительным результатом анализа FFT, поэтому мы можем найти песню по частоте.

Шаг 3. Использование микрофона для записи песни из внешней среды. а также анализировать его с помощью FFT. Поиск совпадающей частоты с предыдущим деревом частоты.