チューナー
楽器の音をマイクで聴き、いちばん近い音名と、そこからのずれ(セント)を針で示します。ストロボに切り替えると、12 の音名の窓のうち、鳴っている音の窓の縞が止まって見えます。
メータ
帯は下から 2・3・4・5 オクターブ縞が止まれば合っている · 低いと左、高いと右へ流れる
—
—セント
—
停止中
周波数の差: 機械式のストロボと同じく、ずれ(Hz)に比例して流れ、高い音ほど速い。セント: 音域によらず、ずれ(セント)に比例して流れる
針の振れ幅いっぱいを何セントにするか。±20 にすると中央付近が広がります
この幅に入ると中央の印が点き、左右の矢印が両方点きます(セント)
測った値をならす強さ。ゆっくりにすると針が揺れにくくなり、速くすると弾いた直後の変化も追います
クロマチック: 12 音のうち最も近い音に合わせる。楽器を選ぶと、その楽器の弦の音だけを探します
基準ピッチと音律から求めた、各弦の目標の周波数
WAV・MP3・FLAC など。この枠へ落としても読み込めます。終わりまで再生したら先頭に戻ります
まだ選んでいません
0:00 / 0:00
CH1 の周波数。CH2 は周波数比で決まる
直近 50 ms のピーク(dBFS)。−3 dBFS を超えると色が変わります
音の周期のはっきりさ(0〜1)。0.90(縦線)を下回る間は音高を出しません
ブラウザに 3 つとも切るよう頼み、実際に効いた設定を出します。Safari は雑音抑圧と自動ゲインの指定に対応していません
—
モニター
マイクでは使いません
スピーカーへ出す大きさ(0 dB = 入力と同じ大きさ)
A4(ト音記号の五線の第 2 間の A)の周波数。ISO 16 は 440 Hz。オーケストラでは 442・443 Hz、古楽では 415 Hz も使います
英米式(C D E)、ドイツ式(B♭ を B、B を H と書く)、イタリア式(ドレミ)、日本式(ハニホ。オクターブは一点・二点…)
国際式は中央のドを C4(A4 = 440 Hz)、ヤマハなどは C3 と書きます
平均律以外は、音ごとに平均律からずらした高さを目標にします。A は基準ピッチのまま
音律を当てはめる調の主音
移調楽器では、鳴っている音(実音)ではなく楽譜の音名で出します
- 周波数
- —
- 目標の周波数
- —
- ずれ(周波数)
- —
- 明瞭度
- —
- 入力レベル
- —
- 窓の長さ
- —
- 標本化周波数 fs
- —
動作原理と式
音高の求め方(MPM)
周期は McLeod の MPM で求めます[1]。窓 (長さ )の正規化した二乗差関数 NSDF は、ずらし で波形がどれだけ重なるかを −1〜1 で表します。
- 自己相関: は、0 を詰めて 2 倍以上の長さにした FFT で を求め、もう一度 FFT して得る。 は を 1 つ進めるごとに 2 項を引く
- 周期の山: の山を越えてから、正の山ごとの最大を集め、いちばん高いものの 0.9 倍を超える最初の山を周期とする。山の位置と高さは放物線で補う
- 明瞭度: 選んだ山の高さ。周期がはっきりしているほど 1 に近い。0.9 を下回る間は音高を出さない
- 窓の長さ: 探す最低音の 2.5 周期が入る 2 の累乗(2048 以上)。周期を決めるには、最も長い周期の 2 倍の信号が要る[2]
周波数を詰める
MPM の放物線補間には、倍音の多い高い音で偏りが残ります(このツールの合成音の試験で C7 に約 1 セント)。弦の部分音は剛性で整数倍より高くなるので[3]、周期から求めた値は部分音の平均のような値になり、非調和性 で約 3 セント高く出ます。そこで、MPM の周波数 を手がかりに、第 部分音の周波数を窓の前半と後半の位相の差で詰めます(位相ボコーダと同じ考え方[4])。
- 窓: 前半・後半はそれぞれハン窓。全体で音の 12 周期(前半・後半に 6 周期ずつ)が入る 2 の累乗で、隣の部分音の漏れを抑える。16384 点を超える低い音は MPM の値のまま
- どの部分音で詰めるか: 第 1〜3 部分音のうち、いちばん強いものの 1/10(−20 dB)以上ある最も低いもの。スマホのマイクで基音が弱くても、第 2・第 3 部分音で詰められる
- 音ごとに固定: 弦と胴の結合で、部分音ごとに整数倍からのずれが違う。途中で替えると値が跳ぶので、音の出し始めに選んだ部分音を音が途切れるまで使い、それが −20 dB より弱くなったら表示を止める
音を追う
- 高域通過20 Hz・2 次
- 出だし30 ms 後から使う
- MPM周期・明瞭度
- 部分音の位相周波数を詰める
- 中央値と折り返し外れ値を除く
- 目標の音音名・弦・ずれ
- 高域通過: 直流や低い揺れが残ると NSDF が負にならず、周期の山を探し始められない
- 出だし: 5 ms ごとの平均の 2 乗が直前 50 ms の最大の 4 倍(6 dB)を超えたら、新しい音の出だしとし、その 30 ms 後からの標本だけを窓に入れる。撥弦の出だしは打撃音で、音高も高めに出る(ギターの高音弦の第 2 部分音で約 1 Hz、約 2.6 セント高く、約 1.5 秒で戻る[5])
- 中央値: 直近 5 回の推定の中央値を使う。出し始めは、3 回の推定が半音の半分以内にそろうのを待つ
- 折り返し: 音が続いている間に、オクターブ・オクターブと 5 度・2 オクターブだけ跳んだ推定は、倍音を基音と取り違えたものとして元の音へ戻す。音がない状態から始めるときは、1 オクターブ下の奇数倍の部分音を確かめる(あれば、MPM は第 2 倍音の周期を選んでいる)
- 最も近い音・弦: 境目で表示が行き来しないよう、前の音から離れるのは半音の 0.65 倍、前の弦から離れるのは、ほかの弦が 0.3 半音より近いときだけにする。新しい音の出だしでは前の音を忘れる
ずれと目標の音
周波数 を、基準ピッチ に対する音番号 (MIDI と同じ。A4 = 69)にし、目標の音 からのずれをセントで出します[6]。 は音律による目標のずれです。基準ピッチの既定は 440 Hz です[7]。
- 純正律の ▼: 純正の長 3 度(5:4)は セント、短 3 度(6:5)は セント。和音の 3 度の音をここに合わせると、うなりが消える
- 音名とオクターブ: 国際式は中央のドを C4、ヤマハなどは C3 と書く[8]。日本式は中央のドを一点ハとし、下へ小字・大字・下一点、上へ二点・三点と呼ぶ
- 移調: B♭ 管は記譜の C で実音の B♭ が鳴るので、実音に 2 半音を足した音名で出す(E♭ 管は 9、F 管は 7)
音律は、主音 C のとき A を 0 にそろえた平均律からのずれを表に持ち、主音を変えたら表を回して A を 0 にそろえ直します。基準ピッチの A はどの音律でも変えません。値は各音律の定義から求め、下の資料と照合しました[9][10][11][12]。
| 音律(主音 C) | C | C♯ | D | E♭ | E | F | F♯ | G | G♯ | A | B♭ | B |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ピタゴラス(ウルフは G♯–E♭) | −5.87 | +7.82 | −1.96 | −11.73 | +1.96 | −7.82 | +5.87 | −3.91 | +9.78 | 0 | −9.78 | +3.91 |
| 1/4 コンマ・ミーントーン | +10.26 | −13.69 | +3.42 | +20.53 | −3.42 | +13.69 | −10.26 | +6.84 | −17.11 | 0 | +17.11 | −6.84 |
| ヴェルクマイスター III | +11.73 | +1.96 | +3.91 | +5.87 | +1.96 | +9.78 | 0 | +7.82 | +3.91 | 0 | +7.82 | +3.91 |
| キルンベルガー III | +10.26 | +0.49 | +3.42 | +4.40 | −3.42 | +8.31 | +0.49 | +6.84 | +2.44 | 0 | +6.35 | −1.47 |
| ヴァロッティ | +5.87 | 0 | +1.96 | +3.91 | −1.96 | +7.82 | −1.96 | +3.91 | +1.96 | 0 | +5.87 | −3.91 |
| ヤング 第 2 | +5.87 | −3.91 | +1.96 | 0 | −1.96 | +3.91 | −5.87 | +3.91 | −1.96 | 0 | +1.96 | −3.91 |
12 音のストロボ
機械式のストロボチューナー(Conn の Stroboconn、1936 年)は、半音ごとに 1 枚、計 12 枚の円盤を基準の速さで回し、入力の音で点滅するランプで照らします。円盤には明暗の帯が同心円に並び、外側の帯ほど区画が 2 倍になって、1 枚で何オクターブもを受け持ちます。鳴っている音の円盤だけが止まって見え、ずれていればその向きにゆっくり回ります[13]。
このツールは、窓 (C〜B)の帯 (下から 2〜5 オクターブ)ごとに基準の周波数 を決め、測った部分音のうち に最も近いものの強さで縞の濃さを、周波数の差で縞の速さを決めます。縞 1 本は位相 1 周です。電子式の仮想ストロボも、縞の位置を基準周波数で進め、入力の周期に合わせて見せる、同じ考え方です[14]。
- 部分音: 第 1〜8 部分音の周波数と強さを、上の位相の差で測る。基音の 1/2・1/4 の高さの帯にも、縞が二重・四重に写って薄く止まって見える(機械式で、区画が点滅の 1/2・1/4 になる帯)
- 倍音の窓: A を鳴らすと、第 3 部分音が E の窓の帯に写る。純正の 5 度は平均律より約 2 セント高いので、その帯はゆっくり流れる
- 縞の速さ: 「周波数の差」は機械式と同じく、同じセントのずれなら高い帯ほど速い。「セント」はセント × 0.254 本/s(A4 で 1 セント = 0.254 Hz)
- ぼけ: 速く流れる縞は目で追えないので、毎秒 1.5 本より速いと薄くし、縞の間を灰色で埋める。読み値が一瞬途切れても縞は 0.3 秒保ち、音が止まると縞だけが薄れて灰色に戻る(窓の明るさは変えない)
- 鳴らし始め: 読み値は、低い音まで探せる長い窓(クロマチックで約 170 ms)が埋まり、値が 3 回そろうのを待つ。縞はそれを待たず、出だしから約 40 ms の短い窓の MPM で先に描き始める。オクターブなどを取り違えても、そこから測る部分音は鳴っている音の本物なので、写った縞の動きは正しい
マイクとブラウザ
- マイクの処理: エコー除去・雑音抑圧・自動ゲインは、どれも音高や音量を変えるので切るよう頼む。指定は努力目標で、Safari は雑音抑圧と自動ゲインの指定に対応していない[15]。Safari ではエコー除去を切ると自動ゲインも切れる[16]。実際に効いた設定は入力の枠に出す
- 低い音: iOS 端末の内蔵マイクは、約 250 Hz から 24 dB/oct で低域を削るという報告がある[17]。ベースやチェロの開放弦の基音はほとんど届かないので、周期と第 2・第 3 部分音から求める
出典
- MPM(NSDF・山の選び方・明瞭度)P. McLeod, Fast, Accurate Pitch Detection Tools for Music Analysis, PhD thesis, University of Otago, 2008
- 周期の推定に要る窓の長さA. de Cheveigné and H. Kawahara, “YIN, a fundamental frequency estimator for speech and music,” The Journal of the Acoustical Society of America, vol. 111, no. 4, pp. 1917–1930, 2002
- 硬い弦の部分音H. Fletcher, “Normal Vibration Frequencies of a Stiff Piano String,” The Journal of the Acoustical Society of America, vol. 36, no. 1, pp. 203–209, 1964
- 位相の差による周波数の推定(位相ボコーダ)F. Keiler and S. Marchand, “Survey on Extraction of Sinusoids in Stationary Sounds,” Proc. 5th International Conference on Digital Audio Effects (DAFx-02), 2002
- 撥弦の出だしの音高の下がり(約 1 Hz、約 1.5 秒)N. Lee, J. O. Smith III, J. Abel, and D. Berners, “Pitch Glide Analysis and Synthesis from Recorded Tones,” Proc. 12th International Conference on Digital Audio Effects (DAFx-09), 2009
- セントA. J. Ellis, “On the Musical Scales of Various Nations,” Journal of the Society of Arts, vol. 33, pp. 485–527, 1885
- 基準ピッチ A4 = 440 HzISO 16:1975, Acoustics — Standard tuning frequency (Standard musical pitch)
- 中央のドを C3 と書く例ヤマハ, PSR-E283 リファレンスマニュアル(鍵盤の図)
- ヴェルクマイスター IIIWikipedia “Werckmeister temperament”
- キルンベルガー IIIWikipedia “Kirnberger temperament”
- ヴァロッティWikipedia “Vallotti temperament”
- ピタゴラス・1/4 コンマ・ミーントーンK. Gann, “An Introduction to Historical Tunings”
- 機械式のストロボ(12 枚の円盤、同心の帯)R. W. Young and A. Loomis (C. G. Conn Ltd.), US Patent 2,286,030 “Stroboscope”, 1942
- 電子式の仮想ストロボM. J. Skubic (Peterson Electro-Musical Products), US Patent 6,580,024 “Electronic strobe tuning aid”, 2003
- 自動ゲイン・雑音抑圧の指定と対応状況MDN, “MediaTrackConstraints: autoGainControl property”・browser-compat-data
- Safari のエコー除去と自動ゲインWebKit Bug 179411
- iOS 端末の内蔵マイクの低域Studio Six Digital, “iPhone 3GS Microphone”
このツールで決めたこと
- MPM の山を選ぶ比 0.9 と、音高を出す明瞭度の下限 0.9
- 窓の長さ: MPM は探す最低音の 2.5 周期、周波数を詰めるのは音の 12 周期(上限 16384 点)。推定は 40 ms ごと
- 詰める部分音の下限 −20 dB、1 オクターブ下を確かめるときの奇数倍の比 0.2
- 中央値 5 回、出し始め 3 回、途切れとみなすまで 4 回
- 出だし: 5 ms ごと、直前 50 ms の 4 倍、30 ms 後から使う
- 合格の幅の既定 ±2 セント(撥弦の出だしの約 2.6 セントの高さで、±1 では最初に灯りが点いたり消えたりするため)
- 針のならし(時定数): 速い 0.06 s・標準 0.16 s・ゆっくり 0.4 s
- ストロボ: 帯は 2〜5 オクターブ、近さの重みは 40 セントの幅、1/2・1/4 の帯の重みは 0.3・0.15、毎秒 1.5 本より速い縞は薄くする
- 基準ピッチの範囲 390〜490 Hz(0.5 Hz 刻み)
- 精度は、合成音(正弦波、倍音の多い音、基音のない音、雑音、非調和)と、ギター音響モデルの開放弦 6 本で確かめた。6 本とも、弾いて 0.3 秒後からの値は基音から ±1 セント以内(中央値)