Вопрос

Я новичок в мире аудио, и мне поручили задачу, с которой я не уверен, как справиться.Мне нужно отобразить график, представляющий высоту звука WAV-файла.Файл WAV может быть полифоническим, и тогда мне нужно отобразить график высоты тона доминирующего (читать:с самой сильной громкостью) инструмент (или пение человеческим голосом).Я довольно хорошо знаком с .NET и почти ничего не знаю в C, C ++, Java.

Я начал исследование в Интернете, и из того, что я понял, определение высоты тона полифонических WAV-файлов - нерешаемая проблема, но мне не нужна точная высота тона, просто чтобы знать, выше ли она по сравнению со следующей и какова ее длина.

Мои вопросы таковы:

  1. С чего мне следует начать изучение теории, лежащей в основе этой задачи?Есть ли какие-нибудь рекомендуемые книги для этого?

  2. Есть ли какой-нибудь API / инструмент, который может это сделать?

Спасибо,

МЛ

Это было полезно?

Решение

Вы можете использовать анализ Фурье для извлечения составляющих частот волны.Вот связанный с этим вопрос SO: Быстрое преобразование Фурье в C#

Другие советы

Я начал с обработки сигналов с Цифровая Обработка сигналов.Вы можете купить книгу в печатном виде примерно за 30 долларов или бесплатно загрузить PDF-файл.Он написан для неспециалистов и содержит много информации, которая поможет вам освоиться с различными методами обработки сигналов.

БПФ (быстрое преобразование Фурье) преобразует зависимость времени от амплитуды сигнала в зависимость частоты (бинов) от интенсивности (энергии).Вы можете перейти от частоты к заметке с помощью стандартные диаграммы найдено на множестве веб-сайтов.

Я работал над несколько связанным проектом.Вы захотите исследовать быстрые преобразования Фурье.Я могу порекомендовать это проект, написанный на C# - он написан как гитарный тюнер, но его можно легко модифицировать в соответствии с вашими целями.

Это, однако, не приведет к многопоточности.Есть продукт под названием "знаменитость" который утверждает, что обладает этой способностью, используя "Прямой доступ к заметкам (ДНК)".Понятно, что их технология имеет закрытый исходный код, но вы можете получить ее лицензию по выгодной цене.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top