音楽の再生
やること
この教材 では、Jasmine Tea のプログラムで音楽を再生する方法を学びます。これにより、簡単なメロディーを作成し、再生するプログラムを作成できます。
ステップ1
エディターに以下のプログラムを入力してみましょう。
play "t120o4l4cdefgab"
play "o4c","o4e","o4g"
play "t150o5l8cde<cdef>g"
ステップ2
エディターの右下にある「▶実行」ボタンを押すと、入力したプログラムが実行されます。実行した後は、画面の右上にある「ドキュメント」タブを押して、ここに戻ってきてください。
では、「▶実行」ボタンを押してください。
ステップ3
実行を押した後、以下のように動作したら成功です。
- メロディーが異なるテンポや音階で順番に再生されます。
- 各音符の長さや音階が正しく再生されていることを確認してください。
ステップ4
実行したプログラムを解説します。
使っている命令の簡単な紹介
play
は指定された音符列を再生する命令です。
Music MacroLlanguage(音符列)の記述方法:
-
t
: テンポを指定します(例:t120
で120BPM)。 -
o
: オクターブを指定します(例:o4
でオクターブ4)。 -
l
: 音符の長さを指定します(例:l4
で4分音符)。 -
音符(例:
c
,d
,e
)。 -
<
や>
: オクターブを上げるまたは下げる。
コマンド | 説明 |
---|---|
cx, dx, ex, fx, gx, ax, bx
|
音階をアルファベットで指示します(c: ド 〜 b: シ)。音長は、各音程のあとの x(1 〜 64)で指示します。音調は、例えば 4 を指定したときは、4分音符となります。x を省略したときは、lx コマンドで指定された音長となります。 |
+, #
|
音階のアルファベットのあとに書くことで、音階を半音上げます。c+4 のように書きます。 |
-
|
音階のアルファベットのあとに書くことで、音階を半音下げます。c-4 のように書きます。 |
.
|
音長の数値のあとに書くことで、付点音符を指示します。音長が 1.5 倍になります。 |
rx
|
休符を指示します。休符の長さは x(1 〜 64)で指定します。x を省略したときは、lx コマンドで指定された長さとなります。 |
lx
|
音長の初期値を指示します。x には、1 〜 64 までの数値を書きます。例えば 4 を指定したときは、4分音符となります。省略時の音長は、4 です。 |
ox
|
オクターブを指示します(1 〜 9)。省略時のオクターブは、4 です。 |
<
|
オクターブを1つ下げます。 |
>
|
オクターブを1つ上げます。 |
tx
|
テンポ(bpm)を指示します。x は 32 〜 255 の数値を指定します。省略時のテンポは、120 です。 |
vx
|
音量を指示します。x は 0 〜 10 の数値を指定します。省略時の音量は 5 です。 |
{...}x
|
連符を指示します。x で指定された音長を、{...} 内の音符の個数で等分します。x は 1 〜 64 の数値を指定します。 |
qx
|
音長(ステップタイム)と実際に音を出している長さ(ゲートタイム)の比を指定します。x は 1 〜 8 の数値を指定します。ゲートタイム/ステップタイムの比は、x/8 で計算されます。省略時は、q7 です。 |
@x
|
音色を指定します。x は 0 〜 3 の数値を指定します。0: 正弦波 1: 短形波 2: のこぎり波 3: 三角波 |
プログラムで行われていること
-
play "t120o4l4cdefgab"
でテンポ120の4分音符で「ドレミファソラシド」を再生します。 -
play "o4c","o4e","o4g"
で3つの音を同時に再生します。 -
play "t150o5l8cde<cdef>g"
でテンポ150の8分音符でメロディーを再生します。
学ぶべきこと
- 音符列を使って音楽を作成する方法。
- テンポや音符の長さを調整する方法。
チャレンジ
- 別の音符列を作成して、オリジナルのメロディーを再生してみましょう。
- テンポやオクターブを変更して、異なる雰囲気の音楽を作成してみましょう。
- 和音(複数の音符を同時に再生する)を使用して、簡単なコード進行を作成してみましょう。