プログラミングで音楽制作!? 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を使うことによって、playsleepを同時に入力することができます。

↓ベースなので音が小さいかもしれないです……

コードを入力する

コードはコード名で指定することができます。

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を使えば楽曲をプログラミングから作成することができます。楽譜データの打ち込みに似ていますね。

みなさんもよかったら使ってみてくださいね!

無料体験受付中

矢印
無料体験予約

無料体験の
予約をする!