AUBIOPITCH(1)
๐ AUBIOPITCH โ aubio User's manual, bestie edition โจ
okay so picture this: it's a command line tool from the aubio manual, and its whole personality is extracting musical pitch. That's the NAME section, we're done, slay.
๐ SYNOPSIS ๐
Like, here's the vibe in code form, keep it exactly as-is:
aubiopitch source
aubiopitch [[-i] source] [-o sink]
[-r rate] [-B win] [-H hop]
[-p method] [-u unit] [-l thres]
[-T time-format]
[-s sil] [-f]
[-v] [-h] [-j]
no cap, that's the whole shape of it ๐ซถ
โจ DESCRIPTION โจ
So aubiopitch attempts to detect the pitch โ aka the perceived height of a musical note. It's giving "perfect pitch but make it a binary." ๐ต
When you start it with an input source (-i/--input), the detected pitch gets printed on the console, prefixed by a timestamp in seconds. And if no pitch candidate is found? The output is literally 0. Not a vibe, but honest. ๐
When you start it without an input source, or with the jack option (-j/--jack), aubiopitch starts in jack mode. main character energy tbqh ๐
๐ธ OPTIONS ๐ธ
This program follows the usual GNU command line syntax, with long options starting with two dashes (--). A summary of options is included below, and yes I'm giving you every single one, because we don't do half-finished here. ๐
-i,--inputsource โ run the analysis on this audio file. Most uncompressed and compressed formats are supported, depending on howaubiowas built (so like, iykyk, it depends on the build ๐ฆ).-o,--outputsink โ save results in this file. The file will be created on the model of the input file. The detected frequency is played at the detected loudness. cute, right? ๐ฅ-r,--sampleraterate โ fetch the input source, resampled at the given sampling rate. The rate should be specified in Hertz as an integer. If0, the sampling rate of the original source will be used. Defaults to0.-B,--bufsizewin โ the size of the buffer to analyze, that is the length of the window used for spectral and temporal computations. Defaults to2048. ๐ช-H,--hopsizehop โ the number of samples between two consecutive analysis. Defaults to256.-p,--pitchmethod โ the pitch detection method to use. See PITCH METHODS below. Defaults to'default'.-u,--pitch-unitunit โ the unit to be used to print frequencies. Possible values includemidi,bin,cent, andHz. Defaults to'Hz'. pick your fighter ๐-l,--pitch-tolerancethres โ set the tolerance for the pitch detection algorithm. Typical values range between0.2and0.9. Pitch candidates found with a confidence less than this threshold will not be selected. The higher the threshold, the more confidence in the candidates. Defaults to unset. (yes, unset โ it's mysterious like that ๐)-s,--silencesil โ set the silence threshold, in dB, under which the onset will not be detected. A value of-20.0would eliminate most onsets but the loudest ones. A value of-90.0would select all onsets. Defaults to-90.0. ๐คซ-T,--timeformatformat โ set time format (samples,ms,seconds). Defaults toseconds. โฑ๏ธ-m,--mix-inputโ mix source signal to the output signal before writing to sink.-f,--force-overwriteโ overwrite output file if it already exists. no "are you sure?" popup, just send it ๐-j,--jackโ use Jack input/output. You will need a Jack connection controller to feedaubiosome signal and listen to its output. ๐-h,--helpโ print a short help message and exit.-v,--verboseโ be verbose. talk to me bestie ๐ฃ๏ธ
๐ฆ PITCH METHODS ๐ฆ
Available methods are:
default
use the default method.
Currently, the default method is set to yinfft. (yes bestie, the default has a default. inception fr fr ๐)
schmitt
Schmitt trigger
This pitch extraction method implements a Schmitt trigger to estimate the period of a signal. It is computationally very inexpensive, but also very sensitive to noise. so like, cheap AND dramatic ๐ญ
fcomb
a fast harmonic comb filter
This pitch extraction method implements a fast harmonic comb filter to determine the fundamental frequency of a harmonic sound. ๐ชฎ
mcomb
multiple-comb filter
This fundamental frequency estimation algorithm implements spectral flattening, multi-comb filtering and peak histogramming. it's giving layers ๐
specacf
Spectral auto-correlation function
yin
YIN algorithm
This algorithm was developed by A. de Cheveigne and H. Kawahara and was first published in:
De Cheveignรฉ, A., Kawahara, H. (2002) "YIN, a fundamental frequency estimator for speech and music", J. Acoust. Soc. Am. 111, 1917-1930.
(the citation stays EXACTLY as written, we respect the icons ๐)
yinfft
Yinfft algorithm
This algorithm was derived from the YIN algorithm. In this implementation, a Fourier transform is used to compute a tapered square difference function, which allows spectral weighting. Because the difference function is tapered, the selection of the period is simplified.
Paul Brossier, Automatic annotation of musical audio for interactive systems, Chapter 3, Pitch Analysis, PhD thesis, Centre for Digital music, Queen Mary University of London, London, UK, 2006.
yinfast
YIN algorithm (accelerated)
An optimised implementation of the YIN algorithm, yielding results identical to the original YIN algorithm, while reducing its computational cost from O(n^2) to O(n log(n)). literally the glow-up of algorithms, obsessed โก
๐ SEE ALSO ๐
go check out the whole friend group: aubioonset(1), aubiotrack(1), aubionotes(1), aubioquiet(1), aubiomfcc(1), and aubiocut(1). squad goals ๐ซถ
๐ AUTHOR ๐
This manual page was written by Paul Brossier <piem@aubio.org>.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ๐ (legal text but make it cute โ the permissions are unchanged, promise)
okay that's the whole page, bestie! ๐ โจ
this iconic little doc is aubio 0.4.9, dated 29 March 2025 โ and the AUBIOPITCH(1) era is so real. ๐ go pitch something. ๐ฆ
๐ฆ where this page comes from
- opensuse-leap 16.0: aubio-tools 0.4.9-bp160.1.2 ยท GPL-3.0-or-later
- opensuse-leap 16.0: aubio-tools 0.4.9-bp160.1.2 ยท GPL-3.0-or-later
- opensuse-leap 16.0: aubio-tools 0.4.9-bp160.1.2 ยท GPL-3.0-or-later
- opensuse-leap 16.0: aubio-tools 0.4.9-bp160.1.2 ยท GPL-3.0-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms