Skip to content

第2章 — コードとトライアド

コードとは、同時に鳴らされるピッチクラスの 集合 であり、集合と同じくその正体は構成要素(メンバーシップ)であって並び順ではありません。この章では、第1章の音程である3度を積んでコードを作り、内部の半音間隔で分類し、キーのスケール度数が一定のコードのパレットを生み出す様子を見ます。これらはまさにMidiSketchの進行エンジンが配置する対象です。

3度を積んでトライアドにする

ルートを取り、その3度上の音を加え、さらにその3度上を加えます。同時に鳴らされた3音が和声になります。

和音(コード)

コード は2つ以上の音を同時に鳴らし、1つの和声単位として聞くものです。メロディが時間に沿った音高の列であるのに対し、コードはある瞬間における音高の 集合 — 音楽の縦の次元です。

トライアド

トライアド は基本となる3音のコードで、ルートの上に3度と5度を積んだものです。最小の「完全な」コードであり、ポップス和声のデフォルト単位です。それ以外のほとんどは、トライアドに音を加えたり並べ替えたりしたものにすぎません。

ルート / 3度 / 5度

ルート はコードの名前の由来であり、構築の起点となる音(コードの度数 1)です。3度 はスケールで2ステップ上、5度 は4ステップ上に位置します(ルートから見た3度と5度)。ルート+3度+5度を積むのが、あらゆるトライアドのレシピです。

トライアドCメジャートライアドを組み立てる
第1音(ルート)を取り、3度上、さらに3度上(第5音)を重ね、同時に鳴らします。C + E + G = Cメジャートライアド。これから出会うほぼすべてのコードは、このように3度を積んで作られます。
chordtriadルート+3度+5度、そして3音同時 — それがコードです。

集合の言葉で言えば、Cメジャートライアドはピッチクラスとしての {0, 4, 7} です(ルートからの半音で測ったC、E、G)。同じ {0, 4, 7} の形をどのルートに作っても、そのルートのメジャートライアドになります。スケール度数と同じく、これも相対座標のパターンです。

性格:コードの色

2つのコードがルートを共有していても、正反対に感じられることがあります。その違いは積み重ねの中の正確な半音間隔です。

コードの性格(クオリティ)

コードの性格 はトライアドの色合い — メジャーマイナーディミニッシュ — で、ルート・3度・5度の間の半音の隙間だけで決まります。メジャー(4+3)は明るく、マイナー(3+4)は悲しく、ディミニッシュ(3+3)は緊張します。同じルートでも隙間のパターンが違えば感情が違うのです。

コードシンボル

コードシンボル はコードのコンパクトな文字名です。C(Cメジャー)、Cm(Cマイナー)、Cdim(Cディミニッシュ)。文字がルート、接尾辞が性格を表します。ピッチクラス集合の人間可読なシリアライズです。

コードの性格メジャー・マイナー・ディミニッシュ:同じルート、違う色
Cメジャー(C-E-G)は明るく響きます。3度を半音下げたCマイナー(C-E♭-G)は悲しく、さらに5度も下げたCディミニッシュ(C-E♭-G♭)は緊張して不安定に響きます。コードの性格=積み重ねの中の正確な半音間隔です。
majorminordiminished真ん中や上の音を半音動かすだけで、感情の色がひっくり返ります。

ポップスの感情のパレット全体は、内側の1〜2音を半音だけ動かすことで切り替わります。整数で言えば、メジャー {0,4,7}、マイナー {0,3,7}、ディミニッシュ {0,3,6}。ビット位置を反転させ、気分を反転させるのです。

ダイアトニックコード:キーのパレット

トライアドのレシピをスケールの すべての 度数に適用すると、キーは互いに調和する7つのコードの既製の集合を渡してくれます。

ローマ数字(度数)表記

ローマ数字表記 はコードを、そのルートのスケール度数で名付けます。I は度数 1 上のトライアド、V は度数 5 上のトライアドです。大文字はメジャー性格、小文字はマイナー、° はディミニッシュを表します。スケール度数と同じくキー非依存で、Cでの I はCコード、Gでの I はGコードです。

ダイアトニックコードCメジャーの7つのコード
Cメジャーの各度数の上にトライアドを作ると、7つのダイアトニックコードが得られます:C、Dm、Em、F、G、Am、Bdim。ローマ数字の大文字はメジャー(I、IV、V)、小文字はマイナー(ii、iii、vi)、°はディミニッシュ(vii°)を表します。ポップスの進行はこのパレットから選ばれます。
degreediatonic各スケール音の上に3度を積むと、そのキーのコードパレットができます。

この7つ — I ii iii IV V vi vii° — がキーの ダイアトニック コードで、ほとんどのポップスが用いる語彙のすべてです。コード進行はこのパレットから順序を選んだもの(例:I–V–vi–IV)にすぎず、MidiSketchの chordProgressionId は22のパターンから選びます。表記が度数ベースなので、1つの進行は任意の key へ移調できます。

転回形とボイシング

コードは集合なので、どのコードかを変えずに音を自由に並べ替えられます。変わるのはその座り方だけです。

転回形 / ボイシング

転回形 はコードの音を並べ替えて別の構成音を最低音(バス)にします。C–E–G(基本形)、E–G–C(第1転回形)、G–C–E(第2転回形)はすべてCメジャーです。ボイシング は選ばれた具体的な縦の配置です。集合としての正体は不変で、バス音と間隔が響きの印象とコード同士の繋がりの滑らかさを変えます。

転回形1つのコード、3つの積み方
C-E-G、E-G-C、G-C-Eはすべて「Cメジャー」です。コードは順序ではなく集合だからです。どの音が一番下に来るか(ボイシング)で、響きの印象とコード同士の繋がりの滑らかさが変わります。MidiSketchはボイスリーディングによって自動的にボイシングを選びます。
inversionvoicing同じ3音を並べ替えてもコードの正体は同じ。ただし最低音が変わります。

この不変性こそが、生成器がコードを滑らかに繋げられる理由です。前のコードに最も近い音を持つ転回形を選ぶ(ボイスリーディング)ことで、動きが最小になります。MidiSketchはボイシングを自動的に選ぶので、あなたは「どのコードか」を指定し、「どう積むか」は指定しません。

ブロックコードとアルペジオ

同じピッチクラス集合は、一度に鳴らすことも時間に広げることもでき、1つのハーモニーから2つの質感が生まれます。

アルペジオ

アルペジオ はコードを同時にではなく1音ずつ順番に鳴らすもの — コードを時間軸に沿って「ほどいた」ものです。ハーモニーは変わらず、リズムの質感だけが違います。同じ集合を、合計する代わりに反復するのです。

同時と分散同じコードを同時に・ばらして
C-E-Gを同時に鳴らせばブロックコード、順番に鳴らせばアルペジオです。同じハーモニーでも質感が変わります。MidiSketchのアルペジオトラック(arpeggioEnabled、arpeggioPattern)はまさにこれを自動化します。
arpeggioEnabledアルペジオとは、コードを1音ずつ順に弾いたものです。

ブロックコードは集合の並列読み出し、アルペジオは直列読み出しです。MidiSketchのアルペジオトラックはブロックコードを分散パターンへ自動変換します。arpeggioEnabled で切り替え、arpeggioPattern07:Up、Down、UpDown、Random、Pinwheel、PedalRoot、Alberti、BrokenChord)で反復の順序を選びます。

よくある落とし穴 — アルペジオトラックはオプトイン

arpeggioEnabled は既定で false です。SynthDriven のようなアルペジオ志向のスタイルでもそうです。分散和音のトラックが出るはずなのに出ない場合は、arpeggioEnabled: true を明示してください。スタイルを選ぶだけでは有効になりません。

MidiSketchとの対応

概念設定フィールド範囲・備考
ダイアトニックコードのパレット → 進行chordProgressionId021、キーのダイアトニックコードから順序付きの度数列を選ぶ
コードの拡張(7th、9th、sus、トライトーン代理)chordExtSuschordExt7thchordExt9thchordExtTritoneSub + 各確率フラグ+0.01.0(デフォルト 0.2 / 0.15 / 0.25 / 0.5)— ハーモニー を参照
分散和音の質感arpeggioEnabledarpeggioPattern真偽値、パターン 07

これらのフィールドのエンジン側の詳細は、ハーモニーとコード進行プリセットカタログJavaScript API を参照してください。

次は第3章 — コード進行に進みましょう。