Caution
You're reading an old version of this documentation. If you want up-to-date information, please have a look at 0.9.1.
librosa.core.pitch_tuning¶
- librosa.core.pitch_tuning(frequencies, resolution=0.01, bins_per_octave=12)[source]¶
Given a collection of pitches, estimate its tuning offset (in fractions of a bin) relative to A440=440.0Hz.
- Parameters
- frequenciesarray-like, float
A collection of frequencies detected in the signal. See
piptrack
- resolutionfloat in (0, 1)
Resolution of the tuning as a fraction of a bin. 0.01 corresponds to cents.
- bins_per_octaveint > 0 [scalar]
How many frequency bins per octave
- Returns
- tuning: float in [-0.5, 0.5)
estimated tuning deviation (fractions of a bin)
See also
estimate_tuning
Estimating tuning from time-series or spectrogram input
Examples
>>> # Generate notes at +25 cents >>> freqs = librosa.cqt_frequencies(24, 55, tuning=0.25) >>> librosa.pitch_tuning(freqs) 0.25
>>> # Track frequencies from a real spectrogram >>> y, sr = librosa.load(librosa.util.example_audio_file()) >>> pitches, magnitudes, stft = librosa.ifptrack(y, sr) >>> # Select out pitches with high energy >>> pitches = pitches[magnitudes > np.median(magnitudes)] >>> librosa.pitch_tuning(pitches) 0.089999999999999969