pythonプログラミング で楽譜作成!| music21 ~ チャーチモード(教会旋法)とプログラム
- 2022.03.14
- music21(pythonプログラム)

みなさん、こんにちは!
今回は「スケール」に焦点を当てたプログラムの紹介です。
魔法の言葉「いどふりみえろ」
音楽理論を学ばれている方であれば、一度は耳にしたことあるだろう言葉「いどふりみえろ」。
ジャズであれば「モード」として良く知られているお話かと思います。
教会旋法(チャーチモード)と呼ばれています。
キー「C」のイオニアンスケールを基準とした、チャーチモードを作ってみます。

プログラム
コードは以下の通りです。
from music21 import *
scale = ['c','d','e','f','g','a','b','c']
mode = [
'_イオニアン(Ionian) ',
'_ドリアン(Dorian) ',
'_フリジアン(Phrygian) ',
'_リディアン(Lydian) ',
'_ミクソリディアン(Mixolydian) ',
'_エオリアン(Aeolian) ',
'_ロクリアン(Locrian) '
]
s = ""
for i in range(7):
for j in range(8):
s += scale[(j+i)%7]
s += "4" if (j+i)//7 == 0 else "'4"
s += mode[i] if j==1 else " "
s += " r1 r1 "
p = stream.Part()
p = converter.parse("tinyNotation: 4/4 " + s )
s = stream.Score(id="mainsheet")
s.insert(0, p)
s.show()
s.show('midi')
music21には、あらかじめ「key.Key()」を使うことで、スケールを作成する事ができます。
参考元:
C_Ionian = key.Key('C', 'Ionian')
D_Dorian = key.Key('D', 'Dorian')
E_Phrygian = key.Key('E', 'Phrygian')
F_Lydian = key.Key('F', 'Lydian')
G_Mixolydian = key.Key('E', 'Mixolydian')
A_Ionian = key.Key('A', 'Aeolian')
B_Ionian = key.Key('B', 'Locrian')
C_Ionian.show()
D_Dorian.show()
E_Phrygian.show()
F_Lydian.show()
G_Mixolydian.show()
A_Ionian.show()
B_Ionian.show()

エラー: データの取得に失敗しました。
-
前の記事
pythonプログラミング で楽譜作成!| music21 ~ 繰り返し処理 | パート | コード 2022.03.13
-
次の記事
pythonプログラミング で楽譜作成| music21 ~エラー処理 2023.01.29