말랑말랑제리스타일

코딩으로 작곡하는 프로그램 소닉파이(Sonic PI) 시작하기 본문

IT기타/최신 IT 트렌드

코딩으로 작곡하는 프로그램 소닉파이(Sonic PI) 시작하기

제리제리 2022. 4. 22. 15:15

코딩으로 작곡이 가능한 신개념 미디 소닉파이라는 프로그램을 알게되었고 한국어로 된 설명이 별로 없어 제가 간단히 설명드립니다.

소닉파이 설치하고 시작하기

소닉파이 설치하기 위해서는 공식홈페이지에서 윈도우 기준 약 170메가의 프로그램을 다운로드 받고 설치하기만 하면 됩니다.

일단 아래에 설치링크로 들어가주시면 다운로드가 가능합니다.

 

반응형
 

Sonic Pi - The Live Coding Music Synth for Everyone

Update Sonic Pi Get the latest version of Sonic Pi for your Raspberry Pi to take advantage of all the new features such as MIDI, OSC networking, new translations, improved interface, headphone audio and much, much more...

sonic-pi.net

들어가셔서 윈도우 10 MSI 인스톨러로 받으시면 되고 맥인 경우 mac OS용을 받으시면 될 것 같네요.

혹시나 소닉파이로 라즈베리파이 코딩하실 분들은 라즈베리 파이용을 받으시면 될 것 같은데 임베디드는 제가 잘 몰라서 가볍게 넘어갈게요.

 

간단하게 다음 눌러서 설치 진행하시고 설치가 끝나면 Sonic PI(소닉파이)를 실행하실 수 있습니다.

본격적으로 코딩으로 작곡하기 시작하는거죠.

Sonic PI(소닉파이)에서 코딩으로 작곡 시작하기

소닉파이로 작곡하는 화면입니다.
소닉파이 화면

좌측 상단에 보이는 소스코드라고 느껴지는 부분에 코딩하시면 되는데요.

일단 제가 튜토리얼을 보면서 작성해본 코드는 위에 나와있는 형태입니다.

play 72라고 코딩하고 좌상단 run 버튼을 누르면 72번 음이 들리게 됩니다.

스크래치에 있는 피아노와 비슷한 기능입니다.

 

이렇게 play 72라는 코드로 음 하나를 연주하는 코드를 완성했고, 두개의 음을 동시에 연주하기 위해서는 아래와 같은 코드를 사용해볼 수 있습니다.

반응형

play 75

play 79

75번과 79번 음을 동시에 연주하는 소스이고 별다른 코딩이 없다면 멀티 실행이 되기 때문에 동시에 소리가 나서 화음 효과가 나게 되죠.

그렇기 때문에 순차적으로 실행하기 위해서는 sleep 명령을 사용합니다.

제가 예시로 작성한 코드를 보겠습니다.

play 72
#72번 음 연주
sleep 1
#1초간 기다림
play 75
play 79
#75번 음, 79번음 동시 연주
sleep 1
#1초간 기다림
play :C4
#4옥타브상의 C코드 연주

주석을 보시면 아시겠지만 1초간 기다릴 수 있고 이렇게 할 경우 1초에 1음을 연주하는 1BPM의 3/4 박자 한마디가 되겠네요.

참고로 소닉파이에서 코드 연주는 콜론을 이용할 수 있고 기본적으로 4옥타브상의 코드가 연주되기 때문에 play :C라고 입력해도 동일한 결과를 얻을 수 있습니다.

살펴보면 파이썬과는 당연히 다르겠지만 파이썬 기반이라 어느 정도 파이썬 코드와 비슷한 느낌을 받을 수 있습니다.

개인적으로는 일단 인터프리터 언어라는 점과 "명령어 매개변수"라는 점에서 파이썬과 유사점을 찾을 수 있었습니다.

 

소닉파이의 또다른 기능들

소닉파이에서 비단 이렇게 음을 찍고 시간별로 소리가 나는 기능만 있는건 아니고 가상악기도 바꿀 수 있고 소리에 옵션도 지정할 수 있기 때문에 지금 소개드린 소닉파이 시작하기는 시작에 불과합니다.

다만 실제 음악 작업을 위한 미디 프로그램으로 쓰기에는 손색이 꽤 많은 느낌이고 실제로 미디를 사용해보신 분들은 소닉파이가 상당히 이상하게 느껴질 것이고 실제 개발자들은 소닉 파이를 사용하기 위해서는 약간의 음악 상식이나 화성학을 공부해야할 필요가 있어보입니다.

반응형
Comments