こんにちは。
Logic Proで任意のスケール(音階)を自作したいというご質問に関して、いくつかの方法をご紹介させていただきます。
1. Chord Trigger(コードトリガー)を使う方法(おすすめ)
Logic Pro内蔵のMIDIエフェクト「Chord Trigger」をMultiモードで使用すると、各鍵盤に対して出力する音を個別に設定できます。
例えば、Fの鍵盤を弾いたときにF#を鳴らしたい場合は、Chord TriggerでFの入力に対してF#の単音を割り当てればOKです。これを他の鍵盤についても繰り返せば、自作のスケールを実現できます。
この方法はGUIベースで直感的に操作できるため、シンプルで実用的です。
2. Scripterでカスタムスケールを作る方法
より柔軟な処理を行いたい場合は、「Scripter」というMIDIエフェクトを使ってJavaScriptベースのスクリプトを書くことで、任意の変換ロジックを実装できます。
以下は、例としてイオニアンスケール(長音階)をドリアンスケールに変換する簡単なスクリプトです:
var PluginParameters = [];
function HandleMIDI(event) {
if (event instanceof NoteOn || event instanceof NoteOff) {
var note = event.pitch % 12;
var scaleMap = {
0: 0,
2: 2,
4: 3,
5: 5,
7: 7,
9: 9,
11: 10
};
var octave = Math.floor(event.pitch / 12);
if (note in scaleMap) {
event.pitch = octave * 12 + scaleMap[note];
event.send();
}
} else {
event.send();
}
}
このようにスクリプトを使えば、Ableton Liveの「Scale」エフェクトと同等以上の処理も可能です。