プログラミングで音楽制作!? Sonic Piを使ってみよう! 【IT KiDS SONG】
どうもみなさんこんにちは。今日のお昼は生姜焼き定食のさばとです。
Sonic Pi
って知ってますか? 私も教室の他の先生に言われて初めて知ったのですが、プログラミングでもって音楽を作ってしまおうというツールになってございます。
Sonic Piとは
Sonic Piはオープンソースの音楽制作環境で、WindowsやMac、LinuxそしてRaspberry Piでも動くアプリケーションです。以下のような構文で書くことで、いろいろな楽曲を作成することができます。
play :a4
sleep 1
今回はIT KiDS SONGを作ってみましょう!
メロディーを作成する
メロディーは以下のように入力します。
use_bpm 120
live_loop :melody do
use_synth :dsaw
play :a4
sleep 1
play :a4
sleep 1
play :c5
sleep 2
play :g4
sleep 1
play :g4
sleep 1
play :c5
sleep 2
sleep 0.5
play :f4
sleep 0.5
play :g4
sleep 0.5
play :a4
sleep 0.5
play :b4
sleep 0.5
play :a4
sleep 0.5
play :g4
sleep 0.5
play :f4
sleep 0.5
play :e4
sleep 1
play :f4
sleep 0.5
play :g4
sleep 2.5
play :a4
sleep 1
play :a4
sleep 1
play :c5
sleep 2
play :g4
sleep 1
play :g4
sleep 1
play :c5
sleep 2
sleep 0.5
play :f4
sleep 0.5
play :g4
sleep 0.5
play :a4
sleep 0.5
play :b4
sleep 0.5
play :a4
sleep 0.5
play :b4
sleep 1
play :c5
sleep 4
end
ベースを入力する
続いてBassです。
live_loop :bass do
use_synth :fm
play_pattern_timed [:f2, :f2], [1.5, 0.5]
play_pattern_timed [:g2, :g2], [1.5, 0.5]
play_pattern_timed [:e2, :e2], [1.5, 0.5]
play_pattern_timed [:a2, :a2], [1.5, 0.5]
play_pattern_timed [:d2, :d2], [1.5, 0.5]
play_pattern_timed [:g2, :g2], [1.5, 0.5]
play_pattern_timed [:c2, :c2], [1.5, 0.5]
play_pattern_timed [:bb2, :bb2], [1.5, 0.5]
play_pattern_timed [:f2, :f2], [1.5, 0.5]
play_pattern_timed [:g2, :ab2], [1, 1]
play_pattern_timed [:a2, :a2], [1.5, 0.5]
play_pattern_timed [:e2, :e2], [1.5, 0.5]
play_pattern_timed [:d2, :d2], [1.5, 0.5]
play_pattern_timed [:g2, :g2], [1.5, 0.5]
play_pattern_timed [:c2, :c2], [1.5, 0.5]
play_pattern_timed [:c2, :c2], [1.5, 0.5]
end
このようにplay_pattern_timed
を使うことによって、play
とsleep
を同時に入力することができます。
↓ベースなので音が小さいかもしれないです……
コードを入力する
コードはコード名で指定することができます。
live_loop :chords do
use_synth :saw
play_chord chord(:f3, :major7)
sleep 2
play_chord chord(:g3, :dom7)
sleep 2
play_chord chord(:e3, :minor7)
sleep 2
play_chord chord(:a3, :minor7)
sleep 2
play_chord chord(:d3, :minor7)
sleep 2
play_chord chord(:g3, :dom7)
sleep 2
play_chord chord(:c3, :major7)
sleep 2
play_chord chord(:c3, :dom7)
sleep 2
play_chord chord(:f3, :major7)
sleep 2
play_chord chord(:g3, :major)
sleep 1
play_chord chord(:ab3, :dim)
sleep 1
play_chord chord(:a3, :minor7)
sleep 2
play_chord chord(:e3, :minor7)
sleep 2
play_chord chord(:d3, :minor7)
sleep 2
play_chord chord(:g3, :dom7)
sleep 2
play_chord chord(:c3, :major7)
sleep 4
end
完成!
全てで聴いてみましょう!
まとめ
このようにSonic Piを使えば楽曲をプログラミングから作成することができます。楽譜データの打ち込みに似ていますね。
みなさんもよかったら使ってみてくださいね!
