「サクラ」でアルゴリズム作曲 - 3 -
ちょっと間があいてしまったが、今日は 「サクラ」でアルゴリズム作曲シリーズの3曲目をやってみる。題して、「サキソフォン四重奏のためのエレジー」だ。
サキソフォンには、5度づつ音域が違う、ソプラノ、アルト、テナー、バリトンの4つの種類がある。
サキソフォンの種類
http://kou-sa.xrea.jp/music/wood/saxophone/saxophone.html
GM音源にも、この4種類のサキソフォンの音色が定義されており、各々の楽器と同じ音域で音を出せば、より楽器に近い音を出すことができる。
MML演習6で、音域を指定して音をランダムに作る関数を作ったので、これを応用して、前回使ったアルゴリズム作曲の関数(Compose)をちょっと変更してみた。
関数 Compose(B_N,R_N,NoN,LoN)
L_N・・・・音域の下限を指定
U_N・・・・音域の上限を指定
NoN・・・・音をいくつ作るかを指定
LoN・・・・音符の種類(セット)を指定
//_ サキソフォン四重奏のためのエレジー
Function Compose(STR L_N, STR U_N, INT NoN, Array LoN){
STR ML={}
[(NoN)
ML=ML+{n(}+Random(NoteNo(L_N),NoteNo(U_N))+{)}+RandomSelect(LoN)
]
Result=ML
}
#Part1=Compose({o4ラ-},{o7ミ-},100,(1,2,4,8)) // SopranoSax
#Part2=Compose({o4レ-},{o6ラ-},100,(1,2,4,8)) // AltoSax
#Part3=Compose({o3ラ-},{o6ミ-},100,(1,2,4,8)) // TenorSax
#Part4=Compose({o3レ-},{o5ラ-},100,(1,2,4,8)) // BaritoneSax
TR(1) P(64-40) V(120) v.Random(60) REV(100) q080 音色(SopranoSax)
TR(2) P(64-10) V(100) v.Random(60) REV(100) q080 音色(AltoSax)
TR(3) P(64+10) V(120) v.Random(60) REV(100) q080 音色(TenorSax)
TR(4) P(64+40) V(100) v.Random(60) REV(100) q080 音色(BaritoneSax)
TR(1) #Part1 TR(2) #Part2 TR(3) #Part3 TR(4) #Part4
//_______ ここまで _______________
参考:「ドリトル」版の「サキソフォン四重奏のためのエレジー」
http://mugen-blog.blogspot.com/2006/04/oom03.html
0 Comments:
コメントを投稿
<< Home