Instrument Tuner

Strobe Tuner, accurate for stretch tuning


An musical instrument tuner with strobe characteristics.

"Tuna" features and auto-tuner (detect closest note) with an idiosyncratic GUI and optional spectrum display. Unlike many other (FFT based) tuners, the algorithm follows the signal phase of the fundamental note, which makes this tuner suitable for stretch tuned instruments.


screenshot screenshot

Operation Principle

The idea behind tuna.lv2 is to rely on the same principle as strobe-tuners and track a signal's phase. The advantage of this is that it is very reliable, accurate and works even at very low frequencies. While many FFT-based tuners use overtones to increase accuracy and speed. tuna.lv2 always tracks the fundamental of the note and can be used for accurate stretch-tuning.

The principle of mechanical strobe tuners is to simply spin a wheel which has regular markings painted on it. Then shine a stroboscope-light on the wheel which flashes at the frequency of the input signal.

If the signal is 'in-tune' the light-flashes match the frequency of the marks on the wheel and every time the marks are illuminated they will appear on the same position despite that the wheel is rotating.

Tuna.lv2 models this behaviour using a delay-line and a delay-locked loop to track the changes of the phase. The phase-change corresponds to what appears as moving-pattern on the mechanical tuner and is visualized in the GUI of the plugin.

Tuna takes a two step approach:

First a rough DFT is used to determine the octave and approximate frequency of the signal, this corresponds to setting the speed of the wheel in the mechanical version.

The detected frequency is rounded to the nearest note on the given scale (by default 440Hz tempered) and used to initialize the PLL.

This is only done for convenience of providing an 'auto-tuner'. Tuna.lv2 can be set to 'manual' in which case the user will have to choose which Note or frequency to tune to.

The input signal is band-pass filtered around the target-frequency in order to reliably extract the phase of the signal. The PLL is used to keep track of phase-changes and calculate the actual frequency of the input signal.