2022년 5월 3일 화요일

Windows 10에서 MIDI 건반을 연결하여 Sound Canvas SC-D70 연주하기

예전에 방법을 다 알아 두었던 것만 같은데 너무 오랫동안 쓰지를 않았더니 기억이 잘 나지 않는다. 검색을 통해서 다시 하나씩 활용법을 되살려 보기로 한다. MIDI 키보드 컨트롤러와 SC-D70이 전부 USB 케이블을 통해 PC에 연결되어 있다고 가정한다.

MIDI-OX를 실행한다. Options -> MIDI Devices..를 선택하여 다음과 같이 키보드와 Roland SC-D70을 연결한다. OK를 클릭하면 키보드 연주에 따라 SC-D70에서 소리가 날 것이다.

GM2/GS로 리셋을 하려면 MIDI-OX에서 다음의 SysEx 메시지를 보내면 된다. 이에 대해서는 2020년 8월에 내 블로그에 기록해 둔 바 있다(링크).

Sound generator parameter initialization messages

[GS] GS Reset F0 41 10 42 12 40 00 7F 00 41 F7

[GM2] GM2 System On F0 7E 7F 09 03 F7

SC-D70은 1608개의 음색과 63개의 드럼세트를 내장하고 있지만 전면 버튼을 하나씩 눌러서 이를 바꾸기는 매우 번거롭다. Variation sound를 이용하려면 MIDI 신호를 통해서 bank select 신호를 보내면 되는데(CC 00), 시퀀싱 소프트웨어 같은 것을 쓰지 않고도 명령행 유틸리티를 통해서 이러한 신호를 보낼 수 있다. 

SC-D70 Owner's Manual 58쪽. 자료(PDF) 링크.

그것은 바로 Geert Bevin의 SendMIDI 유틸리티를 쓰는 것이다. 이 프로그램은 리눅스와 맥, 윈도우에서 모두 실행된다. 'sendmidi list' 명령을 통해서 디바이스 이름을 알아낸 다음. 'sendmidi dev' 명령을 이용하여 뱅크 변경 및 프로그램 변경 메시지를 날리면 된다. 여기서 한 가지 주의할 점은 프로그램을 변경하려면 0-127 범위의 숫자를 넣어야 한다. 사용자 매뉴얼 및 전면 디스플레이는 1-128 범위를 기준으로 한다. 단, 뱅크(variation number)는 매뉴얼에 있는 그대로를 적으면 된다. 윈도우즈 터미널을 열고 다음을 입력해 보라. hilite.me에는 윈도우즈 터미널 또는 명령 프롬프트에 맞는 표현 방식이 없어서 Bash를 택했더니 좀 어색하게 보일 것이다.

> .\sendmidi.exe list
Microsoft GS Wavetable Synth
iCON iKeyboard 5 Nano V1.06
Roland SC-D70 PART A
Roland SC-D70 PART B
Roland SC-D70 MIDI OUT
> .\sendmidi.exe dev "Roland SC-D70 PART A" cc 0 2 pc 2

위 사례에서 프로그램 변경 번호는 2를 넣었지만, 실제로는 3번(Piano 3)으로 바뀐다. SendMIDI의 설명은 아주 간단하다.

  • cc    number value   Send Control Change number (0-127) with value (0-127)
  • pc    number         Send Program Change number (0-127)

  • 노브를 돌려서 0-127 사이의 값을 MIDI 모듈로 보내는 장비를 만들 수도 있을 것이다. 게다가 액정 화면으로 작동 및 설정 상태를 표시하게 만들 수도 있지 않을까? 아두이노를 사용하여 구현하는 것이 가능할 것이다. 그러나 MIDI 케이블을 통하여 컨트롤하는 아두이노 장비를 만들 경우, SC-D70을 컴퓨터가 동시에 제어하게 만들기는 어려울 것이다. 또한 SC-D70을 MIDI cable을 통해 제어하려면, INST LEVEL(PREVIEW)을 누른 상태로 파워를 넣어야 한다(사용자 매뉴얼 39쪽). 차라리 윈도우에서 이를 제어하게 만드는 간단한 파이썬 프로그램을 짜는 것이 더 나을지도 모른다. MIDI-OX에서도 음색 변경이 가능할 것 같지만 아직 확인해 보지 않았다. User forum에 Sending Program Change to Lighting Controller라는 글이 있으니 나중에 자세히 읽어 보도록 하겠다.

    SC-D70 매뉴얼을 다시 들춰 보니 전면 버튼을 조작하여 variation sound를 선택하는 방법이 32쪽에 나온다.

    17번의 Sound Generator Indicators에서 INST에 불이 들어온 상태일 때 [DEC]와 [INC] 버튼을 동시에 누른다. 그러면 INST 표시등이 점멸할 것이다. 이 상태에서 [DEC] 또는 [INC] 버튼을 눌러서 variation sound를 선택하면 된다. 

    댓글 없음: