Идентификация высоты звука в Linux

Существует ли какой-либо бесплатный программный инструмент или комбинация, которая позволяет мне определить высоту записанного сеанса пения?

Идея состоит в том, чтобы отобразить какой-то график с текущим шагом на временной шкале вместе с маркерами для стандартных нот (C3, C#3, D и т. Д.). Мне не нужна коррекция высоты тона, и мне не нужно делать это в режиме реального времени.

Я знаю, что когда-то был плагин для Rosegarden, который сделал это, но он пропал.

4 ответа

Решение

Оформить заказ Audacity. Он вышел из проекта по анализу музыкального тона.

Не совсем то, что вы ищете, но по крайней мере похожая на Singstar Ultrastar-NG делает что-то подобное. http://ultrastar-ng.sourceforge.net/

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

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

Praat по крайней мере сделает автоматическую оценку высоты звука сложных звуков. Хотя я не знаю, может ли он пометить стандартные заметки, как вы просили.

обкрадывать

Другие вопросы по тегам