Об этом проекте

Ideal Piano — приложение «умного пианино», запущенное в апреле 2020 года. Его главная особенность — алгоритм на основе теории музыки, который определяет тип исполняемого в данный момент аккорда и показывает его на экране. Алгоритм происходит из проекта автора musicpy и, как утверждается, способен распознавать аккорды в основном виде, обращения, расположения, альтерированные ноты и пропуски — от простых до сложных аккордов. Функциональность - Игра с использованием компьютерной клавиатуры или MIDI-клавиатуры; сопоставления клавиш и нот можно настроить в файле настроек. - Подробный анализ исполняемого типа аккорда и его отображение на экране. - Загрузка MIDI-файлов и их воспроизведение в форме waterfall с показом текущих типов аккордов в реальном времени, с необязательной подробной информацией по теории музыки. - Поддержка многодорожечного воспроизведения MIDI и перехода по клику на панели прогрессии. - Разделение мелодии и аккордовой части MIDI-файлов и воспроизведение только одной из них с помощью музыкального анализа. - Анализ текущей тональности в реальном времени с поддержкой мажора, минора и церковных ладов, таких как дорийский и лидийский (экспериментально). - Загрузка аудиофайлов или файлов SoundFont в качестве инструментов. - Подключение к DAW и анализ аккордов, исполняемых в данный момент в DAW. - Настраиваемый интерфейс: фоновое изображение, тип и размер шрифта, внешний вид клавиатуры пианино и необязательные названия нот на клавишах. Платформы Windows (протестировано на 7, 10, 11), Linux (протестировано на Ubuntu 24.04.4) и macOS (протестировано на macOS 13). Ссылки на готовые сборки приведены в README; версиям для Linux и macOS может потребоваться настройка совместимости. При неработающих исполняемых файлах рекомендуется сборка из исходного кода; инструкции находятся в папке User Manuals. Использование и документация Папка User Manuals содержит подробные инструкции по каждой функции и руководство по настройкам с описанием каждого параметра. Интерфейс в настоящее время поддерживает английский и китайский языки, переключаемые через настройку языка. Поддержка Проект разрабатывается автором в свободное время и принимает спонсорскую поддержку через Patreon. О проблемах можно сообщать по электронной почте после ознакомления с руководством пользователя.