Библиотека Python для рендеринга нотной записи

Я смотрел на Python In Music , но я не уверен, действительно ли какая-либо из перечисленных библиотек поддерживает

  • рендеринг музыкальных нот
  • экспортировать результат в формате PNG

Предыстория: Я хочу научить детей читать заметки. Для этого я хочу предоставить Raspberry Pi 2B с дисплеем 400x320. Raspberry подключается к клавиатуре через MIDI. Дети видят ноты и должны играть правильные тона. Речь идет о чтении заметок, а не о беглой игре, поэтому небольшого дисплея вполне достаточно.

Пример экрана 320x240 конечного результата:

Пример экрана

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

Возможно, нота bC не была идеальным примером в этом быстром макете.

Ответы (1)

LilyPond подходит для гравировки нотной записи — есть несколько библиотек Python, которые взаимодействуют с ним, например, Abjad .

  • Бесплатно - Да
  • python - можно взаимодействовать с
  • малина-пи - Да
  • вывод в pdf, ps или png

генерировать: - скрипичный ключ, - линии, - индикатор ритма - и ноты. Все вышеперечисленное с использованием текстовых обозначений и многое другое, например шнуры, составные части, другие обозначения и т. Д.

Пример, который я застучал - не музыкально звучит, я уверен :

\language "english"
\relative c'' {
  \time 4/4
  cs2 es4 f4 ds4( g2) cs4 e4 bf( c4 fb2 g4) {af bs} e~
}
\addlyrics {
  Croak like a frog in a Lily-Pond! 
}

введите описание изображения здесь

Некоторые примеры с сайта:

Накладка на лад:введите описание изображения здесь

григорианскийвведите описание изображения здесь

Комплексное обозначение:введите описание изображения здесь

Я думаю, это то, что я ищу. К сожалению не устанавливается. Lilypond нормально устанавливается с sudo apt-get install lilypond, PIP также нормально устанавливается с , sudo apt-get install python-pipно Abjed ( pip install abjad) возвращает ошибку "Error:root:Error parsing". Я постараюсь исправить это с помощью Google Magic
@ThomasWeller, чтобы глобально установить что-либо в Linux, используя pipто, что вам нужно sudo pip install xxxx- лично я обычно использую sudo pip install -U xxxx, чтобы убедиться, что зависимые пакеты также обновлены. В качестве альтернативы используйте python viritualenv, см. pypi.python.org/pypi/virtualenv