연주 스튜디오
마지막 장은 작업실입니다. 지금까지는 책이 들려주고 여러분이 따라 쳤다면, 이제는 여러분이 치고 컴퓨터가 듣습니다. 디지털 피아노나 MIDI 건반을 브라우저에 연결하고, 손과 귀 사이의 지연이 어디서 생기는지 이해한 다음, 카운트인과 메트로놈에 맞춰 녹음하고, 피아노 롤에서 타이밍을 들여다보고, 양자화해서 악보로 옮기고, MIDI 파일과 WAV 파일로 내보냅니다. 마지막으로 드럼·베이스·왼손 반주가 도는 잼 스테이션에서 이 책의 모든 것을 한꺼번에 쓰고, 그 연습을 기록으로 남기는 법까지 다룹니다.
- MIDI 메시지(노트 온·오프, 벨로시티, CC64 서스테인)의 구조를 읽고 Web MIDI로 건반을 연결한다.
- MIDI 전송·오디오 버퍼·출력 장치가 만드는 지연을 계산하고, 몸으로 느껴 본다.
- 카운트인 녹음 → 피아노 롤 → 양자화(격자·강도) → 악보 변환의 과정을 이해하고 직접 해 본다.
- 양자화의 득과 실을 알고, 사람다운 타이밍·셈여림이 무엇인지 설명한다.
- 표준 MIDI 파일(SMF)과 WAV의 구조를 알고 녹음을 파일로 저장한다.
- 잼 스테이션에서 키·진행·스타일·템포를 골라 즉흥 연주하고 테이크를 녹음하며, 연습 기록으로 목표를 관리한다.
MIDI 건반 연결하기
MIDI(Musical Instrument Digital Interface)는 1983년에 나온 전자 악기 사이의 통신 규약입니다. 중요한 점은 MIDI가 소리가 아니라 동작을 보낸다는 것입니다. 디지털 피아노의 건반을 누르면 "60번 건반을 세기 100으로 눌렀다"는 3바이트 메시지가 나가고, 소리는 받는 쪽(여기서는 이 책의 가상 피아노)이 만듭니다. 그래서 같은 MIDI 연주를 다른 음색으로 다시 들을 수 있고, 박자를 바꾸거나 틀린 음만 고칠 수도 있습니다. MIDI의 원리와 역사는 MusicBook의 MIDI 장에 자세히 있습니다.
벨로시티는 건반이 눌리는 속도를 0–127로 잰 값입니다. 건반 안의 두 접점(또는 광센서)이 차례로 닿는 시간 간격으로 측정하므로, 엄밀히는 '힘'이 아니라 '속도'입니다(3장의 해머 속도와 같은 개념). 사람마다, 건반마다 손의 무게가 달라서 같은 로 쳐도 나오는 숫자가 다릅니다. 그래서 대부분의 디지털 피아노와 소프트웨어에는 벨로시티 곡선(Velocity curve)이 있습니다. 입력 을 로 바꾸면 은 가볍게(약하게 쳐도 크게), 은 무겁게(세게 쳐야 크게) 만듭니다.
브라우저는 Web MIDI(Web MIDI API)로 USB에 꽂힌 건반을 읽을 수 있습니다. Chrome·Edge 같은 Chromium 계열 브라우저와 최근의 Firefox에서 동작하고, Safari(아이폰·아이패드 포함)는 지원하지 않습니다. 또 보안상 https 페이지에서만, 사용자가 허락했을 때만 열립니다. 아래 모니터는 건반에서 들어오는 메시지를 16진수 그대로 보여 줍니다. MIDI 건반이 없어도 화면 건반을 누르면 똑같은 형식의 메시지를 만들어 보여 주니, 구조를 익히는 데는 충분합니다.
MIDI 모니터: 메시지 · 벨로시티 곡선 · 서스테인 페달
지연: 손과 귀 사이의 몇 밀리초
어쿠스틱 피아노에서 건반을 누른 뒤 해머가 현을 치기까지는 수 ms–수십 ms가 걸리고(여리게 칠수록 늦습니다), 소리가 1 m를 날아가는 데 약 2.9 ms가 걸립니다. 피아니스트는 이 지연에 평생 적응해 있어서 느끼지 못합니다. 디지털 환경에서는 여기에 새로운 지연이 더해집니다. MIDI 전송, 운영체제의 입력 처리, 소리를 합성하는 오디오 버퍼, 출력 장치(특히 블루투스 이어폰은 100–200 ms에 이르기도 합니다)가 차례로 시간을 잡아먹습니다.
얼마나 늦어야 느껴질까요? 흔히 10 ms 안쪽은 대부분 눈치채지 못하고, 20–30 ms를 넘으면 '건반이 무겁다', '소리가 따라온다'는 느낌이 들기 시작한다고 합니다. 빠른 패시지나 스타카토일수록 민감합니다. 흥미로운 사실은 사람이 메트로놈에 맞춰 손가락을 두드릴 때 보통 클릭보다 수십 ms 먼저 두드린다는 것입니다(음의 비동기, negative mean asynchrony). 뇌가 손끝의 촉각과 귀의 소리가 도착하는 시간 차이를 미리 보정하기 때문으로 설명됩니다. 아래 실험에서 지연을 일부러 늘려 이 보정이 어떻게 무너지는지 느껴 보세요.
지연 체험기와 탭 테스트
녹음: 카운트인에서 악보까지
자기 연주를 녹음해 듣는 것은 가장 강력한 피드백입니다. 연주하는 동안 뇌는 손을 움직이는 데 바빠서 귀가 들은 것을 절반쯤 흘려 버립니다. MIDI 녹음은 여기에 '보는' 피드백을 더합니다. 음 하나하나의 시작 시각, 길이, 세기가 숫자로 남기 때문입니다. 녹음의 흐름은 다음과 같습니다. ① 카운트인: 녹음 전에 한두 마디 클릭을 들려주어 템포를 몸에 넣습니다. ② 녹음: 메트로놈에 맞춰 칩니다. ③ 피아노 롤(Piano roll): 가로 = 시간, 세로 = 음높이인 그림으로 결과를 봅니다. 자동 피아노의 구멍 뚫린 종이 두루마리에서 온 이름입니다. ④ 양자화(Quantization): 음의 시작을 가장 가까운 격자(8분음표, 16분음표 …)로 옮깁니다. ⑤ 악보 변환: 양자화된 음을 음표로 적습니다.
녹음기: 카운트인 → 피아노 롤 → 양자화 → 악보 → 재생
양자화의 득과 실: 기계 같은 연주, 사람 같은 연주
양자화를 100%로 걸면 박은 완벽해지지만 음악은 대개 더 나빠집니다. 사람의 연주가 격자에서 벗어나는 방식은 무작위 잡음만이 아니기 때문입니다. 숙련된 피아니스트도 음 시작이 수 ms–수십 ms씩 흔들리지만, 그 상당 부분은 의도된 구조입니다. 프레이즈 끝에서 느려지고(프레이즈 끝 늘이기), 마디의 첫 박을 조금 세게 치고, 선율의 정점을 향해 점점 세졌다가 풀립니다. 연주 표현을 측정한 연구들(예: 레프(B. H. Repp)의 피아노 연주 분석)은 서로 다른 연주자들도 이런 타이밍 곡선의 큰 모양을 놀랄 만큼 비슷하게 공유한다는 것을 보여 주었습니다.
그래서 음악 소프트웨어의 휴머나이즈(Humanize) 기능, 즉 양자화한 음에 무작위 흔들림을 더하는 기능은 반쪽짜리 해법입니다. 무작위 흔들림은 '기계 같음'을 줄여 줄 뿐 '음악다움'을 만들지는 못합니다. 아래 실험에서 바흐 시대의 「미뉴에트 G장조」(페촐트 작, 공유 저작물) 첫 네 마디로 두 종류의 차이를 비교해 보세요. 무작위 흔들림 만 올린 소리와, 흔들림은 0으로 두고 박 강세·프레이즈 셈여림·끝 늘이기 같은 구조만 넣은 소리 가운데 어느 쪽이 더 사람 같은가요?
휴머나이즈 비교기: 무작위 흔들림 vs 구조적 표현
파일로 남기기: MIDI와 WAV
녹음은 두 가지 파일로 남길 수 있습니다. 표준 MIDI 파일(Standard MIDI File, SMF, .mid)은 연주 '동작'의 기록입니다. 수 KB로 아주 작고, 악보 프로그램이나 DAW에서 열어 음을 고치거나 다른 악기로 바꿀 수 있습니다. WAV는 소리 그 자체, 즉 1초에 44,100번 잰 공기 압력의 숫자 열입니다. 어디서나 재생되지만 크고(16비트 모노 1분 ≈ 5.3 MB), 녹음된 소리를 '음 단위로' 고칠 수는 없습니다.
아래 내보내기 도구는 이 장에서 마지막으로 만든 테이크(녹음기 또는 잼 스테이션)를 받아, 페이지 안에서 직접 SMF 바이트를 쓰고(작은 SMF 작성기), WAV는 OfflineAudioContext로 같은 가상 피아노 소리를 실시간보다 빠르게 '오프라인 렌더링'해서 만듭니다. 파일은 여러분의 컴퓨터로만 저장되고 어디에도 올라가지 않습니다.
내보내기: SMF 작성기와 WAV 오프라인 렌더러
—
잼 스테이션: 반주 루프 위에서 연주하기
이제 모든 것을 한곳에 모읍니다. 잼 스테이션은 여러분이 고른 키·진행·스타일·템포로 드럼·베이스·왼손 반주를 돌리고, 여러분은 오른손으로 선율을 즉흥 연주합니다. 건반에는 지금 코드의 구성음(빨강 = 근음, 청록 = 3·5·7도, 숫자는 코드 근음에서의 도수)과 고른 스케일의 음(테두리 원)이 표시되어, 어떤 음이 '착지하기 좋은 음'인지 보입니다. 13장에서 배운 질문–대답, 코드톤 착지, 9장의 진행, 6장의 음계를 모두 여기서 씁니다.
즉흥 연습에도 제약이 필요합니다. 한 번에 하나만 정하세요. (1) 코드톤만 써서 각 마디 첫 박에 근음 또는 3도 놓기 (2) 2마디 연주 + 2마디 쉼 (3) 4분음표 리듬만 (4) 한 음에서 시작해 반음 위·아래로만 움직이기. 그리고 ● 테이크 녹음으로 남기세요. 테이크의 '코드톤 적중률'은 친 음 가운데 그 순간 코드의 구성음 비율입니다. 높다고 좋은 연주는 아니지만, 코드를 듣고 있는지에 대한 좋은 지표입니다.
잼 스테이션: 키 · 진행 · 스타일 · 템포 · 테이크 녹음
MB.play 신스 베이스, 드럼은 MB.drum. 녹음 중에 템포를 바꾸면 테이크의 박 위치가 어긋납니다.연습 기록과 목표
연습은 측정할 때 늘어납니다. GuitarBook 14장에서 다룬 의도적 연습의 네 요소(구체적 목표, 집중, 즉각적 피드백, 능력보다 조금 위)는 피아노에서도 똑같습니다. 연습 일지는 그중 '피드백'을 몇 주 단위로 늘려 줍니다. 무엇을 몇 분, 몇 BPM으로 했는지 한 줄씩 남기면, 정체된 곳과 늘어난 곳이 숫자로 드러납니다. 또 학습 연구는 한 번에 몰아서 하는 연습보다 나눠서 자주 하는 연습(간격 효과)이 오래 남는다는 것을 반복해서 보여 주었습니다. 주 2회 2시간보다 매일 20분이 낫다는 뜻입니다. 아래 일지의 '연속 연습일'은 이 규칙성을 재는 숫자입니다.
연습 일지: 기록 · 타이머 · 주간 목표
다음 단계
이 책을 끝까지 왔다면 여러분은 피아노가 어떻게 소리를 내는지(현·해머·향판·비조화성), 악보를 어떻게 읽는지, 손가락을 어떻게 쓰는지, 화음과 진행이 어떻게 엮이는지, 그리고 그것을 여러 스타일로 어떻게 반주하는지를 알게 되었습니다. 다음은 순전히 연습의 몫입니다. 막히는 곳이 생기면 해당 장으로 돌아가세요.
소리와 음악 이론을 더 깊이 알고 싶다면 MusicBook의 시퀀서와 스튜디오 장에서 MIDI와 녹음을 신호 처리 관점으로, 리하모니제이션 장에서 진행을 바꾸는 법을 볼 수 있습니다. 기타도 함께 배우고 있다면 GuitarBook의 잼 스테이션에서 같은 진행을 기타로 반주해 보세요. 두 악기로 같은 화성을 보면 이해가 한 겹 더 깊어집니다.
마지막으로 한 가지. 원리를 아는 것은 연습을 대신하지 못하지만, 연습을 덜 막막하게 만듭니다. 막혔을 때 무엇을 바꿔 볼지 가설을 세울 수 있기 때문입니다. 측정하고, 조금 고치고, 다시 측정하세요. 오늘 15분이라도 건반 앞에 앉으세요. 그리고 내일 다시 앉으세요.
핵심 정리
- MIDI는 소리가 아니라 동작을 보낸다. 노트 온
9n 음 세기, 노트 오프8n(또는 세기 0인 노트 온), 서스테인Bn 40 값(64 이상 = 밟음). 데이터 바이트는 0–127. - 벨로시티는 건반이 눌리는 속도이고, 곡선 로 손에 맞춘다( 가볍게, 무겁게). Web MIDI는 Chromium 계열·Firefox에서, https와 사용자 허락 아래 동작한다.
- 지연 = MIDI 전송(DIN 3바이트 ≈ 1 ms) + 입력 처리 + 오디오 버퍼(, 보통 2–3개) + 출력 장치. 10 ms 안쪽이면 대개 느끼지 못하고, 블루투스 출력은 연주에 부적합하다.
- 녹음 흐름: 카운트인 → 녹음 → 피아노 롤 → 양자화 → 악보. 격자는 '가장 짧은 음표'에 대한 가정이고, 강도를 100% 미만으로 두면 사람다운 결이 남는다.
- 사람의 어긋남은 무작위 잡음 + 구조적 표현(박 강세, 프레이즈 셈여림, 끝 늘이기)이다. 무작위 휴머나이즈는 기계 같음을 줄일 뿐 음악다움을 만들지 못한다.
- SMF = MThd(형식·트랙 수·4분음표당 틱) + MTrk(VLQ 델타 시간 + 이벤트). 템포 = 60,000,000/BPM µs. WAV는 소리 그 자체(16비트 모노 44.1 kHz ≈ 88 KB/초).
- 잼 스테이션에서는 한 번에 하나의 제약을 걸어 즉흥하고, 테이크를 녹음해 들으며 코드톤 착지를 확인한다.
- 연습은 기록할 때 는다. 몰아서보다 나눠서 자주, 결과 목표보다 과정 목표, 지킬 수 있는 수준의 80%에서 시작해 조금씩 올린다.
확인 퀴즈
MIDI 메시지 90 3C 00의 뜻은?
샘플링 주파수 48 kHz에서 버퍼 512샘플 두 개 분량의 지연은?
박 단위 시각 1.62에서 시작한 음을 8분음표 격자(g = 0.5), 강도 50%로 양자화하면?
16분음표가 많은 곡을 8분음표 격자로 100% 양자화했을 때 생기기 쉬운 문제는?
120 BPM을 표준 MIDI 파일의 템포 메타 이벤트(FF 51 03 tt tt tt)로 적으면 tt tt tt는?
자기 연주를 '사람답게' 만드는 데 가장 효과가 적은 것은?