Самый простой способ превратить перестановки в нотацию Сибелиуса

Полный фиктивный (непрограммистский) вопрос здесь. Есть такие перестановки, например:

(n=9, r=2) {1,2} {1,3} {1,4} {1,5} {1,6} {1,7} {1,8} {1,9} { 2,1} {2,3} {2,4}
{2,5} {2,6} {2,7} {2,8} {2,9} {3,1} {3,2} {3,4} {3,5} {3,6} {3,7} {3,8} {3,9}
{4,1} {4,2} {4,3} {4,5} {4,6} {4,7} {4,8} {4,9} {5,1} {5,2} {5,3} {5,4} {5,6}
{5,7} {5,8} {5,9} {6,1} {6,2} {6,3} {6,4} {6,5} {6,7} {6,8} {6,9} {7,1} {7,2}
{7,3} {7,4} {7,5} {7,6} {7,8} {7,9} {8,1} {8,2} {8,3} {8,4} {8,5} {8,6} {8,7}
{8,9} {9,1} {9,2} {9,3} {9,4} {9,5} {9,6} {9,7} {9,8}

Таким образом, в этом случае имеется тактовый размер 2/2, и каждая нота в фигурных скобках является половинной. Числа считаются как:


      
Created with Raphaël 2.1.0

Три вопроса в одном:

1) есть ли софт, который это делает мгновенно? Кроме того, при использовании Sibelius 7.5 очень удобен пакетный плагин.

2) Участвует ли алгоритмическая композиция в записи перестановок (скрипты "ракетостроения"??)? если оно есть в текущем программном обеспечении для составления алгоритмов, мне могут понадобиться подробные инструкции.

3) Нужно ли это для программного обеспечения высшего качества, если я хочу подняться выше трех или четырех октав с перестановками нотаций?

Ответы (3)

Я не уверен, как ваши {x,y}пары сопоставляются с нотами; рассматривая их как аккорды:

echo '{1,2} {1,3} ...' | tr '{},' '<> ' | perl -ple '%p2n=qw/1 c 2 d 3 e 4 f 5 g 6 a 7 b 8 c'\'' 9 d'\''/; s/(\d)/$p2n{$1}'\''/g' | ly-fu --absolute --open --silent -

производит

черные точки

что кажется неудовлетворительным, так что, возможно, вместо этого {x,y}блоки представляют собой последующие заметки с течением времени?

echo '{1,2} {1,3} ...' | tr ',' ' ' | tr -d '{}' | perl -ple '%p2n=qw/1 c 2 d 3 e 4 f 5 g 6 a 7 b 8 c'\'' 9 d'\''/; s/(\d)/$p2n{$1}'\''/g' | ly-fu --absolute --silent --open

Тем не менее, это моя цепочка инструментов, которая требует https://github.com/thrig/App-MusicTools и некоторого знания Unix, Perl и Lilypond для практического применения. Чтобы воспроизвести это, например, для Sibelius, потребуется изучить, какие возможности сценариев есть у Sibelius или какие форматы он может импортировать, а затем (узнать, как это сделать, а затем) написать соответствующий код для генерации подходящих данных для импорта Sibelius. Похоже, что http://www.sibelius.com/download/documentation/pdfs/sibelius710-manuscript-en.pdf является хорошей отправной точкой для кодирования в рамках экосистемы Sibelius.

Если это то, чего хочет OP, вы можете легко написать MIDI-файл из lilypond и импортировать его в Sibelius. Для такой простой партитуры не должно быть ничего «потерянного при переводе» с использованием MIDI.
Существуют коммерческие и бесплатные плагины для Sibelius, написанные на проприетарном языке сценариев Sibelius (называемом ManuScript), которые предназначены для создания композиционных идей. Вы можете связаться с авторами этих плагинов и скриптов и попросить о помощи. Официальный список подключаемых модулей Sibelius от Avid находится здесь: sibelius.com/download/plugins/index.html .

Ну, я не знаю программных возможностей Сибелиуса. Вот пример файла LilyPond:

\version "2.18.0"

#(define (perm lst r)
  (if (zero? r) '(())
   (append-map
    (lambda (x)
     (append-map
      (lambda (old) (if (member x old) '() (list (cons x old))))
      (perm lst (1- r))))
    lst)))

showperm =
#(define-music-function (parser location r notes) (index? ly:music?)
  (make-sequential-music
   (map (lambda (x) (music-clone notes 'elements (ly:music-deep-copy x)))
        (perm (ly:music-property notes 'elements) r))))

{
  \time 2/2
  \showperm 2 <c' d' e' f' g' a' b' c'' d''>2
  \showperm 4 { c'8 e' g' c'' }
  \bar "|."
}

Теперь вывод из этого файла будет выглядеть такэта картинка

Хотя кажется, что это может быть то, что ищет спрашивающий, неясно, можно ли изменить перестановки и автоматически изменить музыку или как это работает. Не могли бы вы добавить немного о взаимосвязи между данными перестановками и о том, как этот файл Lilypond выгравирует их в виде примечаний?

В целом кажется, что это может быть работа для языка ManuScript , который имеет прямую (хотя часто неуклюжую и ограниченную) интеграцию с Sibelius. Однако я понимаю, что вы упомянули, что у вас мало знаний в области программирования - если вы не хотите влезать в беспорядок и довольно плохую документацию Manuscript, вам может быть лучше просто делать что-то вручную (три часа копирования заметок). из электронной таблицы Excel будет намного быстрее, чем > 8 часов изучения ManuScript для непрограммиста). Если это более крупный проект или проект более общего назначения, безусловно, было бы полезно изучить ManuScript или другие варианты, отличные от Sibelius (другие упоминали Lilypond, Abjad позволяет вам работать с Lilypond алгоритмически через Python, OpusModus также может быть стоит изучить.


2) Участвует ли алгоритмическая композиция в записи перестановок (скрипты "ракетостроения"??)? если оно есть в текущем программном обеспечении для составления алгоритмов, мне могут понадобиться подробные инструкции.

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

3) Нужно ли это для программного обеспечения высшего качества, если я хочу подняться выше трех или четырех октав с перестановками нотаций?

Не совсем понял, что вы имеете в виду, не могли бы вы уточнить?