Музиката представлява организирана система от звуци, която предизвиква определени реакции.
Обикновено музикалните звуци са тонове с определена височина и трайност, но се правят не малко експерименти с използване на произволни звуци и шумове, от които се изграждат музикални композиции (или поне звукови композиции).
Така музикалното произведение се строи от определен звуков материал - тонове или шумове. Композиторът организира този материал в осмислена система от звуци, които прозвучават последователно или едновременно.
Повторението е най-простия начин да се получи организирана система.
В следващия пример с програма съм получил случайна последователност от 5 тона, която се повтаря 8 пъти:
Пограмата, с която генерирах този пример, е написана на езика на системата LilyPond:
\version "2.18.2"
nnotes = 5 % брой ноти в мотива
duration = 2
% 0-цели, 1-половини, 2- четвъртини, 3-осмини, 4 - шестнадесетини, 5-тридесетивторини
ambitus = 24
randomNotes =
{
$(let ((random-state (seed->random-state (current-time))))
(make-sequential-music
(map (lambda (x)
(let ((idx (random ambitus random-state)))
(make-event-chord
(list
(make-music 'NoteEvent
'duration (ly:make-duration duration 0 1/1)
'pitch (ly:make-pitch
(quotient idx 7)
(remainder idx 7)
0))))))
(make-list nnotes))))
}
motiv = \randomNotes
\score {
\new StaffGroup <<
\new Staff {
\set Staff.midiInstrument = #"acoustic grand"
\tempo 4 = 240
\time 5/4
\motiv
\motiv
\motiv
\motiv
\motiv
\motiv
\motiv
\motiv
\bar "|."
}
>>
\layout {
\context {
\Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
}
\context {
\Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
}
}
\midi { }
}
Тази програма чертае нотния запис и създава MIDI файл, който може да бъде изсвирен от виртуален или хардуерен инструмент.
Еднотактовият мотив сам по себе си представлява просто 5 случайни ноти. Но, когато започне да се повтаря, възниква някаква музикална логика.
Философско отклонение
Не е задължително композиторът да бъде човек. Възможно е компютърна програма да създава музикални произведения по определени правила. Тези правила могат да бъдат целенасочено измислени или да бъдат в някаква степен случайни или подчиняващи се на математически или други закономерности, взети извън музиката.
Например, правен е опит очертанията на една планина със своите върхове да бъдат изтълкувани като мелодична линия, задаваща промяната на височината на тоновете във времето.
Генеративната музика (Generative music) се създава непосредствено в процеса на изпълнението от компютър или друга автоматична система (например аналогова моделираща система, модулен синтезатор или други устройства). Правилата за автоматично генериране на тоновете могат да съдържат в различни пропорции определеност или случайност.
Генеративното музикално произведение може постоянно да варира, никога да не се повтаря точно и да звучи потенциално безкрайно.
По начало се предполага, че музиката освен форма има и някакво съдържание, смисъл. Когато композиторът е човек, може да се очаква, че той предава някакъв смисъл със своето произведение. Но когато музиката се генерира автоматично какъв е нейният смисъл ?
Възможен отговор дава природата. Какъв е смисълът на някоя планина или друг красив природен пейзаж ? Тях не ги е създал нарочно някой човек с цел да бъдат красиви или да предават някакъв смисъл. Въпреки това и красотата на природата, както изкуството, може да предизвиква емоционална реакция у човека. Така изглежда, че това са родствени феномени.
Практически опити
Направих прости софтуерни системи, които пораждат автоматично мелодични последователности. В един експеримент използвах нееднородна система: в Linux стартира семпъл-плейъра timidity, в който съм заредил свои семпли; по-нататък във виртуалния модулен синтезатор VCV Rack се генерира последователност от MIDI ноти, които се подават на timidity да ги изсвири.
Като семпли записах тоновете на калимба. Използвах диатонична алт-калимба Bolf Kalimbas с 15 пластини в сол мажор. Тази калимба има тяло във вид на плътна дъска от орех. Пластините са от пружинна стомана и са доста ниско над тялото, но при тихо и внимателно свирене звукът е изключителен.
Общият брой на пластините и строя са от значение за звука, защото когато се удря една пластина зазвучава не само тя, но едновременно и някои от другите, които са в резонанс със нейните обертонове. Така се формира много богата обща звучност.
Получи се такава последователност от тонове:
Част от нея в нотен запис изглежда така (с темпо 60 четвъртини в минута):
Системата от модули на VCV Rack, с която е генериран този пример, изпълнява само функциите да създава последователността от MIDI ноти. Най-общо, чрез модул генератор на шум и модул Sample&hold се генерират случайно променящи се височини на ноти; с нискочестотни осцилатори LFO и генератори на шум се модулира силата на тоновете. Накрая получената последователност от MIDI ноти се подава на работещия като сървър семпъл-плейър timidity.
Софтуерният модулен синтезатор VCV Rack е удобен и за живо изпълнение. Чрез модула MIDI-MAP с хардуерен MIDI контролер или клавиатура може да се управляват различни параметри на другите модули. А модулът CV-MIDI може да управлява освен виртуални инструменти и външни хардуерни синтезатори.