1st DAY ログ (1)
使用ページ:Getting Started With Sonic Pi
https://projects.raspberrypi.org/en/projects/getting-started-with-sonic-pi
[1] First sounds with Sonic Pi
play:再生
sleep:休み
use_bpm:プログラム全体の店舗を設定(beat per minute)
※「sleep 1」は「1秒休む」ということではなく、「1ビート休む」ということ。
→つまり、使用しているbpmによって長さが異なる。
[2] Loop a tune
bufferはそれぞれ別個のファイルとして保存する必要あり。
数値.times do ~ end:(数値)回繰り返す
(例)
2.timed do 〜 end:〜の中に入っているプログラムが2回繰り返される
- loop do 〜 end:ずっと繰り返す
[3] MIDI notes and music notes
- 音の決め方
参考:http://sonic-pi.mehackit.org/exercises/en/10-cheatsheet/01-cheatsheet.html
[4] Change the sounds
use_synth :〜 :使う楽器を切り替える
synthサンプル:https://www.youtube.com/watch?time_continue=6&v=sao0oWgevHc
ヘルプ > シンセ」から、どんな音色があるのかを見ることができる
マイクをつないでいないときに、「sound in〜」を使うと危険だから注意!
☆再生、停止のショートカットキー☆
・run:command + r / alt + r
・stop:command + s / alt + s
[5] Use samples
sample :〜 :〜というサンプルを再生
print sample_duration :〜 :〜というサンプルの長さを見ることができる。
(例)
--
print sample_duration :loop_amen_full
--
と入力して「Run」をクリックすると、ログに
--
{run: 244, time: 0.0}
└─ 6.857142857142857
--
と表示される。この「6.857142857142857」がloop_amen_fullの長さ。
[6] Playing two tunes at the same time
- in_thread do 〜 end:〜は独立したコードだということを表す
(例)
--
loop do
sample :loop_amen
sleep 1.753
end
16.times do
play 75
sleep 1.753
play 74
sleep 0.25
end
--
上記のように書くと、初めのloop内にあるsample :loop_amenしか再生されない。
--
in_thread do
loop do
sample :loop_amen
sleep 1.753
end
end
in_thread do
16.times do
play 75
sleep 1.753
play 74
sleep 0.25
end
end
--
上記のように、in_thread do 〜 endで囲むと、両方のコードが同時に再生される。
[7] Live code!
- define: ** do 〜end :〜という機能(音、曲)の**という命令
(例)
--
define :play_my_synth do
use_synth :prophet
play 50, attack :0.2, release :1.3
sleep 0.5
end
loop do
play_my_synth
end
--
play_my_synthという命令をループする。
- コードの前に#をつけると、コードは表記されている状態だが演奏はされなくなる。
(例)
--
# loop do
# play_my_synth
# end
--
※できるのは追加だけ!演奏しながら、ある特定の音を消すということはできない。