2014/05/27

基準音から各周波数を求める JavaScript

Aの基準音を入力してボタンを押すと各音の周波数を求めるプログラム。

1939年にロンドンの国際会議にて基準音A=440Hzと決められ、1953年にはISOにもなる。 それ以前の時代では周波数を測ることも容易ではなかったため、かなりゆるく、臨機応変に基準音を決めていたようだ。バロック期はA=415Hzあたりと現在よりも約半音低く、その後、徐々に422、432Hzと高くなってきたようだ。1711年にはJohn Shoreによって音叉が発明され、普及はしていたが、音叉そのものの基準音が各社バラバラだったようだ。

基準音をA=440Hzに決めた後もまもられることはなかった。オーケストラなどで、より華やかな印象を与えるために442、443、445Hzにして演奏するのが当たり前となり、せっかく決めた基準が無視され現在に至っている。そして録音や楽器を通して広く一般にも影響を及ぼしてしまっている。結果的に基準である440Hzが軽視され、足並みが揃わないまま。

現在学校に導入されている各楽器も上記の理由から440、441、442Hzとバラバラだったりする。こんな楽器らで合奏したら、ぐしゃっとした音にしかならない。440Hzに統一してくれよと思う。

式は下記で、求めたい周波数 f' と基準音 f となる。n は整数の場合、基準音からの半音毎の距離となる。例えば12でちょうど1オクターブ上になる。基準音よりも低いとマイナスになる。
f' = f * 2 (n/12)

Calib.A: Hz


中学生ぐらいから学ぶフーリエ変換 目次