音出し その3 和音

和音に挑戦。

和音の並び、画面構成は @きよし 様 作成  MIDI Chord Helper参考にしました。 パクリました(^^;

とりあえず試したいかたはこちら

使い方:

  1. 上のコード表を クリックすると和音が出ます。sus4欄は 下のコード+sus4 です。
  2. コード表のコードは適当に並んでいるわけではありません。
  3. shiftキーで7th、ctrlキーでM7th、altキーで6th になります。(ウソかもしれない)
  4. コード生成方法が適当です。本来は上に並んでる b#の数(キー(調))によって、音をオクターブ移動したりしないといけないはずなんですが、してません。(誰かルール教えて(´・ω・`))
  5. ピアノロールは、そのままクリックすると単音が出ます。Shiftキーと一緒にクリックすると、メジャー和音が出ます。
  6. 左上デバイスの変更、音色(Program)の変更は今まで通りですが、音色は番号だけじゃなくて名前を表示するようにしました。右ボタンで逆順に変化します。
  7. Effect は、緑の画面エフェクトのOn/Off です。Onにすると、背景が黒くなり、例のエフェクトが出ます。
  8. Octave はオクターブの移動です。ピアノロールのC の位置にオクターブ表示があります。左クリックで オクターブが上がり、右クリックで下がります。

あくまで、和音は適当なので、ご注意ください。

※このアプレットのソースコードの公開予定はありません。


以前、ニコニコ技術部で、@きよし さん の「あの楽器?でInnocenceをコード演奏してみた」を見たときから、これは すごいと思っていて、「あの楽器」を作るときは絶対このやりかたを使おうと心に決めていました。
<a href=”http://www.nicovideo.jp/watch/sm5733724″ mce_href=”http://www.nicovideo.jp/watch/sm5733724″>【ニコニコ動画】あの楽器?でInnocenceをコード演奏してみた</a>
で、実際にproce55ingで作ってみたのが こちらです。

しかし、音楽理論がさっぱりわからん。今回、実際に実装したコードの生成方法は次の通り、

3和音のトニック、ドミナント、サブドミナントの生成方法。

  • トニック:ベース音コード名の音(C ならド)。
  • ドミナント:トニックの3度上の音(MIDI Pitch で トニック+4)
  • サブドミナント:トニックの5度上の音(MIDI Pitch で トニック+7)
  • マイナーの場合、ドミナントを MIDI Pitch で -1
  • sus4 の場合、ドミナントをMIDI Pitchで +1

さらに、7th等の生成

  • 7thは、3和音に、短7度上の音を加える。(MIDI Pitch で トニック+10)
  • M7thは、3和音に、長7度上の音を加える。(MIDI Pitch で トニック+11)
  • 6thは、3和音に、短6度上の音を加える。(MIDI Pitch で トニック+9)

という非常に簡単な方法で 行っています。

コードはこんな感じ

int[] makeCode(int base, int mFlg, int numFlg, int shpNum ){
int[] pitches= new int[4];
// 基本3和音
pitches[0] = base;
pitches[1] = base+4;
pitches[2] = base+7;
pitches[3] = -1;
// マイナー
if( mFlg == 1 ){
pitches[1] = pitches[1] -1;
}
// sus4
if( mFlg == 2 ){
pitches[1] = pitches[1] +1;
}
// add
if( numFlg == 6 ){  // 6th
pitches[3] = base+9;
}
if( numFlg == 7 ){  // 7th
pitches[3] = base+10;
}
if( numFlg == 8 ){  // M7th
pitches[3] = base+11;
}
if( numFlg == 9 ){  // 9th
pitches[3] = base+14;
}
return pitches;
}

ほんとうは、サブドミナント音を オクターブ下にもっていったり4和音目を オクターブ下にもっていったり しなきゃいけないはずなんだけど、さっぱりわからん。

このへんは、音楽の詳しいひとに教わりたいなぁ。誰か教えてください。

コメント / トラックバック 11 件

  1. @きよし より:

    参考にしていただいてうれしいですw
    さっそく使わせていただきました。
    暗くしてみたら、みごとに「あの楽器」と融合していて楽しかったですw

    ピッチベンド入力機能も実装されていたのですね。ちなみに MIDI Chord Helper ではピッチベンドは表示だけです(●の伸び縮みで表示。ピッチベンドホイール付のMIDIキーボードから試してみると再現できます)

    オクターブ移動=「転回」は、あらかじめ1オクターブくらいの音域を決めておいて、それをオーバーしたら1オクターブ調整する、といったシンプルな方法でいけると思います。

    ちなみにドミナントは3度じゃなくて5度上のこと、
    サブドミナントは5度下(=4度上)のことを指します。

    では「あの楽器」ミーティングでお会いしましょうw

  2. Finasteride Acheter Rennes

    Propecia Acheter Montpellier, Propecia Prix Pharmacie, Propecia Composition, Propecia Posologie, Finasteride Chez La Femme, Propecia Generique 90 Discount, Propecia Generique Metz, , Propecia Ou Finasteride, Propecia Forum, Propecia Dosage

  3. Reagan Jimenez より:

    Are there as cheap social media reputation service than ReputationUP.com? Frontier Oil? 1 know they only cost fortynine dollars which is not much, nevertheless… I have 2 give 3 more options for my buddies. Pls reply

  4. Nice site are you on twitter?

  5. fashion life より:

    Bid thy wife farewell

  6. パワーレベリングアディクト - 多かれ少なかれすべてはパワーレベリングが得意得るためにあなたのための学習が必要になります。power leveling {Got|Eventually Got} You All The Way Down? We Now Have The Response.
    [url=http://ameblo.jp/qrs217/entry-11712372844.html]AION 育成代行[/url]

コメントをどうぞ