‘헤르츠’가 실제로 무엇인지, 그리고 두 가지 견해가 왜 다른지
헤르츠는 1초당 1사이클을 의미합니다. 파이썬으로 528 Hz 음파를 생성한 다음, 두 가지 서로 다른 방법으로 횟수를 세어보세요. 두 방법의 결과에서 마지막 자릿수가 서로 다르며, 그 이유를 알아두면 좋습니다.
주파수 수치는 끊임없이 거래되지만, 실제로 측정되는 경우는 거의 없습니다. 특정 주파수가 어떤 효과를 내는지에 대한 논쟁을 벌이기 전에, 그 수치가 정확히 무엇을 의미하는지 명확히 하는 것이 중요합니다. 왜냐하면 이후의 혼란 중 상당 부분은 사람들이 “528 Hz”를 수치가 아닌 명칭으로 사용하기 때문에 발생하기 때문입니다.
헤르츠는 1초당 1주기입니다. 이것이 바로 이 단위의 정의 전부입니다. 이 SI 단위는 하인리히 헤르츠의 이름을 따서 명명되었으며, 그 의미는 정확히 ‘어떤 현상이 1초마다 이만큼의 횟수만큼 완전히 반복된다’는 것입니다. 528 Hz의 음파는 1초 동안 공기 압력이 상승했다가 다시 원래 위치로 돌아오는 과정을 528번 반복하는 것입니다.
하나를 만들어서 측정할 대상을 마련하려고 합니다
이 작업에는 신디사이저가 필요하지 않습니다. 순수한 음은 사인파이며, 사인파는 세 개의 선으로 이루어져 있습니다:
import numpy as np
sr = 44100 # samples per second
t = np.arange(int(4 * sr)) / sr # four seconds of time stamps
y = np.sin(2 * np.pi * 528 * t) # 528 cycles per second
2 * np.pi가 포함된 이유는 사인파의 한 주기가 2π 라디안이기 때문입니다. 여기에 528을 곱하면 t의 1초당 528개의 주기가 들어갑니다. 오디오 합성에서 이 외의 모든 내용은 이 원리를 바탕으로 한 확장된 개념입니다.
첫 번째 항목: 제로 크로싱
파동이 초당 528회 주기를 완료한다면, 초당 528번 0점을 통과하며 상승합니다. 그러니 세어 보세요:
ups = np.sum((y[:-1] < 0) & (y[1:] >= 0)) # upward zero crossings
print(ups / 4) # per second
4초 동안 이 값은 초당 527.88 사이클을 반환하며, 528은 아닙니다.
두 번째 항목: FFT
또 다른 접근 방식은 신호 전체를 한 번에 읽어들이고, 그 신호가 어떤 주파수들로 구성되어 있는지 파악하는 것입니다. 푸리에 변환을 통해 파형을 여러 성분으로 분해하면, 그중 가장 강한 성분이 바로 정답이 됩니다:
spec = np.abs(np.fft.rfft(y))
freqs = np.fft.rfftfreq(len(y), 1 / sr)
print(freqs[np.argmax(spec)]) # 528.00
그 결과 528.00 Hz가 반환됩니다.
왜 의견이 다른가
두 가지 정직한 방법, 같은 신호인데 마지막 자릿수만 다릅니다. 이럴 때면 둘 중 하나가 고장 났다고 단정하고 싶은 유혹이 들기 마련입니다. 하지만 둘 다 고장 난 것이 아닙니다.
제로 크로싱 횟수가 적은 이유는 4초 창에 정수의 주기가 포함되지 않기 때문입니다. 528 Hz에서는 4초 동안 2112개의 완전한 주기가 지나고, 그 뒤에 일부 주기가 남습니다. 카운터는 잔여 주기를 계산할 수 없기 때문에 이를 생략하게 되며, 그 결과 평균값이 약간 낮게 나옵니다. 이는 528에 국한된 현상이 아닙니다. 주파수 길이가 해당 시간 창으로 정확히 나누어지지 않는 모든 주파수에서 발생하는 현상입니다. 시간 창을 늘리면 오차가 줄어듭니다. 전체 주기가 커지면 생략되는 잔여 주기가 전체에서 차지하는 비중이 작아지기 때문입니다.
여기서 FFT 결과는 정확해 보이지만, 이를 의심해 볼 필요가 있습니다. 해상도 역시 윈도우에 의해 결정되는데, 4초 분량의 오디오를 분석하면 주파수 빈 간격이 0.25 Hz가 됩니다. 528은 빈에 정확히 들어맞습니다. 528.1 Hz의 음파는 가장 가까운 빈에 속하게 되며, FFT는 이 잘못된 결과에 대해서도 똑같이 확신에 찬 결과를 보여줄 것입니다.
유용한 결론은 특정 방법이 우월하다는 것이 아닙니다. 모든 측정값은 그 측정값이 도출된 틀의 형태를 띠고 있다는 점이며, 측정 방법을 밝히지 않은 수치는 그 자체의 절반이 결여된 것입니다. 그렇기 때문에 이 채널의 세션에서는 수치와 함께 그 수치가 어떻게 도출되었는지도 함께 공개합니다.
그에 따라 발생하는 두 가지 사항
들리지 않는 주파수도 여전히 재생되고 있습니다. 528 대신 1을 넣어 같은 세 줄을 작성하면 파일은 침묵 상태가 아닙니다. 이 파일에는 초당 한 주기를 완료하는 최대 진폭의 파동이 포함되어 있습니다. 인간의 청각 범위는 대략 20 Hz에서 20 kHz이므로, 1 Hz는 전혀 음높이를 만들어내지 않습니다. “들리지 않는다”와 “존재하지 않는다”는 서로 다른 표현이며, 이 차이 때문에 4 Hz의 양이차(binaural differential)가 파일 내에 존재하더라도 여러분은 4 Hz를 전혀 듣지 못하는 것입니다. 이는 4 Hz가 음 그 자체로서 존재하는 것이 아니라, 두 개의 들리는 음 사이의 차이로 존재하기 때문입니다.
주파수가 두 배가 되는 것은 두 단계가 아니라 한 단계처럼 들립니다. 528 Hz와 1056 Hz는 한 옥타브 차이고, 1056 Hz에서 2112 Hz로 가는 것도 또 다른 옥타브 차이지만, 두 번째 단계에서는 헤르츠 값이 두 배로 늘어납니다. 음높이 지각은 대략 로그 함수적 성질을 띠기 때문에, 음악적 음정은 단순한 차이가 아니라 비율로 표현됩니다. 또한 이것이 바로 590 Hz와 438 Hz의 스펙트럼 중심이 단순한 차감 결과보다 더 멀리 떨어져 있는 이유이기도 합니다.
주파수 관련 주장에 있어 중요한 부분
A440은 “X Hz로 조율되었다”는 모든 주장을 평가하는 기준이 되며, 이는 자연의 상수가 아니라 합의에 의한 결과입니다. 1939년 런던에서 열린 국제 회의에서 440 Hz로 결정되었습니다. 그 이전인 1859년, 프랑스는 435 Hz를 법으로 정했으며, 콘서트 피치는 도시와 시대에 따라 달라졌습니다. 오늘날 베를린과 비엔나에서는 443 근처의 음높이로 연주하고, 뉴욕에서는 442 근처의 음높이로 연주하는데, 이는 연주자들이 더 밝은 음색을 선호하기 때문입니다.
이는 특정 주파수가 효과를 발휘하는지 여부에 대해서는 아무것도 입증하지 못합니다. 다만, ‘한 가지 조율법만이 자연에 속하고 나머지는 자연에서 벗어난 것’이라고 주장하는 이야기의 다른 절반을 무너뜨릴 뿐입니다. 그것들은 모두 합의에 불과합니다. 남은 문제는 특정 주파수가 특정 효과를 일으키는가 하는 것인데, 이는 경험적 질문으로, 연구마다 답이 달라지며, 이 저널의 다른 곳에서도 정직하게 다루어지고 있다.
한 음을 두 가지 방식으로 세는 이유는 0.12 Hz 때문이 아닙니다. 측정하지 않은 수치는 단지 명칭에 불과하며, 측정 과정은 세 줄에 걸쳐 있기 때문입니다.
참고 문헌
이 글에서 다루는 내용은 임상적 증거라기보다는 신호 처리의 정의에 관한 것입니다. 즉, 헤르츠에 대한 국제단위계(SI) 정의와, numpy를 사용하여 구현된 이산 푸리에 변환 및 윈도잉의 표준 동작에 관한 내용입니다. 콘서트 음정 연혁: 1859년 프랑스의 디아파송 노르말(435 Hz)과 1939년 런던 회의에서 채택된 표준(440 Hz).
오디오 신호 처리에 관한 교육용 콘텐츠입니다. 의학적 조언이 아닙니다.
Listen · FFT-verified session ‘헤르츠’가 실제로 무엇인지, 그리고 두 가지 견해가 왜 다른지 Watch on YouTube →