Поиск ноты в musicXML
Я пытаюсь проанализировать список классов тонов, которые воспроизводятся в каждом разделе, в файле musicXML с помощью java и jSoup. Вывод должен выглядеть следующим образом (одна строка на деление):
A C E
A C
A C D
(for instance)
Я мог бы заполнить этот массив на основе длительности ноты, учитывая количество делений в части. Но я не могу найти время начала заметок. Есть ли простой способ разбора этого?
Спецификация musicXML имеет длительность и высоту тона (которые я могу проанализировать), но меня смущает время начала заметки.
2 ответа
Если он включен в заметку, он начинается одновременно с предыдущей заметкой, как мне кажется.
Элементы backstep и forward отслеживают время.
Парсер, который я разработал, доступен здесь. Люди, которые заинтересованы, могут свободно использовать код / библиотеку.
MusicXML имеет временную шкалу с мерой, которую программы должны отслеживать для точного времени запуска. Элементы нот перемещают его вперед, если нет дочернего элемента аккорда. Элементы прямого и резервного копирования также могут перемещать его вперед или назад в пределах меры. Если вам нужно точное время запуска на уровне всего фрагмента, ваша программа также должна отслеживать их. MIDI имеет несколько похожую структуру. Учебное пособие по MusicXML может оказаться полезным по адресу http://www.musicxml.com/tutorial/.