내가 비트 정박이라고 한 건 엇박이 중요하다는 게 아니라, 드럼 전개가 계속 같은 게 문제라는 뜻이야.
이 한마디가 작업의 방향을 바꿨어요.
처음에는 음악에 맞춰 움직이는 화면을 만들 생각이었어요. 그런데 Aside와 작업을 이어갈수록, 단순히 소리에 반응하는 효과보다 음악과 화면이 함께 전개되는 작은 라이브 퍼포먼 스에 가까워졌어요.
Hydra는 코드를 입력하며 실시간 비주얼을 만드는 브라우저 도구이고, Strudel은 브라우저에서 패턴으로 음악을 연주하는 도구예요. 두 도구를 연결해 음악이 쌓일수록 화면도 함께 쌓이는 구조를 만들어봤어요.
화면은 움직였지만 공연처럼 느껴지지는 않았어요
제가 처음 요청한 내용은 이랬어요.
음역대마다 다르게 반응하게 해줘.
시간의 흐름과 라이브성을 살려줘.Aside는 음악을 저음·중저음·중고음·고음으로 나누고, 각 음역이 서로 다른 화면 요소를 움직이게 만들었어요. 저음에는 큰 맥동, 중음에는 흐르는 형태, 고음에는 빛 입자와 짧은 잔상이 반응했어요. 여기에 8단계 순환 구조와 자동 박자 감지도 붙였어요.
분명 소리에 반응하고 있었어요. 그런데 제가 원한 느낌과는 달랐어요. 화면의 요소가 흔들리기는 했지만, 한 장면 안에서 효과가 반복되는 느낌이 강했어요. 음악도 박자를 맞추는 데 집중하다 보니 전개가 단순했고요.
이미지 설명: 음역대별 반응과 자동 박자 감지를 적용한 첫 번째 Hydra 화면 — 소리를 네 음역대로 나누고, 각 대역이 다른 시각 요소를 움직이도록 만든 첫 단계예요.
"엇박"을 늘리는 것으로 잘못 이해했어요
제가 "비트가 너무 정박이고 전개가 단순하다"고 말하자 Aside는 셔플과 엇박, 무작위 하이햇을 추가했어요. 하지만 제가 말한 문제는 연주 위치가 아니었어요. 처음부터 끝까지 비슷한 드럼 패턴이 반복되는 게 문제였어요.
그래서 다시 설명했어요.
내가 비트 정박이라고 한 건 엇박이 중요하다는 게 아니라,
드럼 전개가 일정하다는 소리야.이후에는 드럼을 한 패턴으로 계속 돌리지 않고 구간에 따라 바꾸기 시작했어요. 도입부는 비워두고, 다음 구간에는 새로운 킥과 하이햇을 더하고, 후반에는 필인과 스네어 롤을 넣었어요. 중간에는 악기를 덜어내는 브레이크다운도 만들었어요.
여기서 한 가지를 더 요청했어요.
루프가 반복될 때마다 곡도 쌓이고 악기도 쌓이게 해줘.그 결과 네 마디가 지날 때마다 악기가 하나씩 추가됐어요. 킥에서 시작해 하이햇, 베이스, 스네어, 화음이 차례로 들어왔고, 화면에도 도형·줄무늬·일렁임·보로노이·잔상이 같은 순서로 더해졌어요. 음악의 구조와 화면의 구조가 처음으로 같은 방향을 보기 시작했어요.
이미지 설명: 0·1·3·6번째 루프에서 음악과 함께 시각 레이어가 누적되는 네 장면 — 루프가 진행될수록 악기와 화면 요소가 함께 추가되는 과정을 한눈에 비교했어요.
Strudel의 음악을 Hydra가 직접 읽게 했어요
처음에는 Hydra가 마이크로 주변 소리를 듣고 반응하도록 만들었어요. 하지만 이렇게 하면 스피커 소리뿐 아니라 방 안의 소음까지 섞일 수 있어요.
그래서 Strudel이 만드는 소리를 내부에서 바로 분석해 Hydra로 전달했어요. 저음은 도형의 크기와 일렁임, 하이햇은 줄무늬, 스네어는 장면의 강조, 다른 악기는 확대와 반복 형태에 연결했어요. 아직 등장하지 않은 악기의 화면 레이어는 반응하지 않도록 맞췄고요.
중요했던 건 음악 값을 화면에 그대로 꽂지 않는 것이었어요. 소리 수치가 조금만 흔들려도 화면 전체가 지글거리기 쉬웠거든요. 큰 장면 변화는 박자와 구간 구조를 따르게 하고, 실제 소리는 순간적인 강조에만 사용했어요.
모르면 전문 도구의 문서를 읽고 다시 만들게 했어요
작업이 여전히 단순하게 느껴져서 이렇게 요청했어요.
잘 모르겠으면 MadMapper, TouchDesigner, VDMX,
Ableton Live 문서를 보고 배우고 와.Aside는 공식 문서에서 반복을 다루는 방식과 장면 전환 구조를 찾아봤어요. Ableton Live에서는 여러 변주를 준비해 확률적으로 선택하는 방식과 서로 다른 길이의 반복을 엇갈리게 사용하는 방법을 참고했어요. TouchDesigner와 VDMX에서는 큰 움직임을 박자 시계에 묶고, 오디오 분석은 작은 강조로 사용하는 구조를 살펴봤어요. MadMapper에서는 장면과 큐를 만들고 전환 시간을 두는 방식을 참고했고요.
이 내용을 적용해 화면을 A·B·C·브레이크다운 네 장면으로 나눴어요. 구간이 바뀔 때는 한 마디 동안 장면이 겹치며 넘어가도록 했고, 킥과 스네어에는 짧게 올라왔다가 내려가는 반응을 넣었어요. 브레이크다운에서는 화면 밝기와 밀도를 함께 낮췄어요.
이미지 설명: A·B·C·브레이크다운 네 구간의 색·형태·밀도 차이를 비교한 화면 — 한 화면의 효과를 반복하는 대신, 음악 구간마다 서로 다른 장면 문법을 적용했어요.
저는 귀로 듣고, Aside는 수치로 확인했어요
Aside는 제가 듣고 있는 음악을 사람처럼 들어서 "좋다"거나 "이상하다"고 판단할 수 없었어요. 그래서 역할을 나눴어요.
저는 "신스가 너무 일정하다", "중간에 난해한 종소리가 들린다", "속도는 120 BPM 정도가 좋겠다"처럼 들은 느낌을 말했어요. Aside는 해당 악기를 찾고, 화음과 드럼의 전개를 바꾸고, 소리의 크기와 주파수 분포를 측정했어요.
52마디가 한 바퀴 도는 동안 구간별 음량을 재보니, 처음에는 C 구간에서 소리가 찌그러지는 클리핑 샘플이 3,602개 잡혔어요. 베이스와 저역을 정리하고, 필인과 전체 음량을 조절한 뒤에는 네 구간 모두 0개가 됐어요. 저역에 지나치게 몰린 에너지를 줄이고 하이햇과 퍼커션도 보강했어요.
라이저가 올라갈 때는 화면이 조금 확대되고 밝아지며, 다음 구간의 첫 박에서 대비가 바뀌도록 만들었어요. 음악의 전개와 화면의 전환을 같은 시간축 위에 올려놓은 셈이에요.
이미지 설명: 라이저가 올라가는 순간과 다음 구간 첫 박의 화면을 나란히 비교한 장면 — 음악의 상승과 다음 구간의 시작을 화면 확대·밝기·대비 변화로 연결했어요.
이번 작업에서 배운 점
처음부터 정확한 기술 용어로 요청할 필요는 없었어요. "너무 일정하다", "쌓이는 느낌이었으면 좋겠다", "종소리가 난해하다"처럼 제가 실제로 느낀 문제를 말하는 편이 더 도움이 됐어요.
다만 감각적인 표현만 던지고 끝내면 Aside가 다른 방향으로 해석할 수도 있었어요. 실제로 "정박"이라는 말을 엇박의 문제로 이해했어요. 결과를 보고 무엇이 다른지 다시 설명했을 때 비로소 음악의 구조가 바뀌었어요.
이번 작업에서 사람은 미감과 방향을 판단했고, Aside는 그 피드백을 코드와 구조로 옮기고 측정 가능한 부분을 확인했어요. 둘 중 하나만으로는 같은 결과가 나오기 어려웠어요.
아직 완성작이라고 부르지는 않았어요
수치로는 클리핑과 대역 균형을 개선했지만, 마지막 음악의 음색과 전체 흐름이 충분히 좋은지는 아직 최종 확인하지 않았어요. 자동으로 다음 장면을 고르는 기능도 아이디어 단계에 남아 있어요.
그래서 이 글은 완성된 공연의 소개라기보다, 자연어 피드백을 주고받으며 음악과 화면을 함께 발전시킨 과정의 기록에 가까워요. 완성된 한 사이클을 영상으로 남기고, 실제로 보면서 어느 전환이 자연스럽고 어느 부분이 지루한지 확인 하는 일은 아직 남아 있어요.
참고한 공식 자료
- Hydra: https://hydra.ojack.xyz/
- Strudel: https://strudel.cc/
- TouchDesigner Beat CHOP: https://docs.derivative.ca/Beat_CHOP
- VDMX Plugins: https://docs.vidvox.net/vdmx/vdmx_plugins
- MadMapper Scenes and Cues: https://madmapper.com/files/06-Scenes%20and%20Cues.pdf
- Ableton Live Follow Actions: https://www.ableton.com/en/live-manual/12/launching-clips/