af17d79c355b0004b8a1d4ae7f6004de3716090b
[aubio.git] / doc / aubiopitch.txt
1 NAME
2   aubiopitch - a command line tool to extract musical pitch
3
4 SYNOPSIS
5
6   aubiopitch source
7   aubiopitch [[-i] source] [-o sink]
8              [-r rate] [-B win] [-H hop]
9              [-p method] [-u unit] [-l thres]
10              [-s sil]
11              [-v] [-h] [-j]
12
13 DESCRIPTION
14
15   aubiopitch attempts to detect the pitch, the perceived height of a musical
16   note.
17
18   When started with an input source (-i/--input), the detected pitch are
19   printed on the console, prefixed by a timestamp in seconds. If no pitch
20   candidate is found, the output is 0.
21
22   When started without an input source, or with the jack option (-j/--jack),
23   aubiopitch starts in jack mode.
24
25 OPTIONS
26
27   This program follows the usual GNU command line syntax, with long options
28   starting with two dashes (--). A summary of options is included below.
29
30   -i, --input source  Run analysis on this audio file. Most uncompressed and
31   compressed are supported, depending on how aubio was built.
32
33   -o, --output sink  Save results in this file. The file will be created on
34   the model of the input file. The detected frequency is played at the
35   detected loudness.
36
37   -r, --samplerate rate  Fetch the input source, resampled at the given
38   sampling rate. The rate should be specified in Hertz as an integer. If 0,
39   the sampling rate of the original source will be used. Defaults to 0.
40
41   -B, --bufsize win  The size of the buffer to analyze, that is the length
42   of the window used for spectral and temporal computations. Defaults to 2048.
43
44   -H, --hopsize hop  The number of samples between two consecutive analysis.
45   Defaults to 256.
46
47   -p, --pitch method  The pitch detection method to use. See PITCH METHODS
48   below. Defaults to 'default'.
49
50   -u, --pitch-unit unit  The unit to be used to print frequencies. Possible
51   values include midi, bin, cent, and Hz. Defaults to 'Hz'.
52
53   -l, --pitch-tolerance thres  Set the tolerance for the pitch detection
54   algorithm. Typical values range between 0.2 and 0.9. Pitch candidates found
55   with a confidence less than this threshold will not be selected. The higher
56   the threshold, the more confidence in the candidates. Defaults to unset.
57
58   -s, --silence sil  Set the silence threshold, in dB, under which the onset
59   will not be detected. A value of -20.0 would eliminate most onsets but the
60   loudest ones. A value of -90.0 would select all onsets. Defaults to -90.0.
61
62   -m, --mix-input  Mix source signal to the output signal before writing to
63   sink.
64
65   -j, --jack  Use Jack input/output. You will need a Jack connection
66   controller to feed aubio some signal and listen to its output.
67
68   -h, --help  Print a short help message and exit.
69
70   -v, --verbose  Be verbose.
71
72 PITCH METHODS
73
74   Available methods are:
75
76   default  use the default method
77
78   Currently, the default method is set to yinfft.
79
80   schmitt  Schmitt trigger
81
82   This pitch extraction method implements a Schmitt trigger to estimate the
83   period of a signal. It is computationally very inexpensive, but also very
84   sensitive to noise.
85
86   fcomb  a fast harmonic comb filter
87
88   This pitch extraction method implements a fast harmonic comb filter to
89   determine the fundamental frequency of a harmonic sound.
90
91   mcomb  multiple-comb filter
92
93   This fundamental frequency estimation algorithm implements spectral
94   flattening, multi-comb filtering and peak histogramming.
95
96   specacf  Spectral auto-correlation function
97
98   yin  YIN algorithm
99
100   This algorithm was developped by A. de Cheveigne and H. Kawahara and
101   was first published in:
102
103   De Cheveign√©, A., Kawahara, H. (2002) "YIN, a fundamental frequency
104   estimator for speech and music", J. Acoust. Soc. Am. 111, 1917-1930.
105
106   yinfft  Yinfft algorithm
107
108   This algorithm was derived from the YIN algorithm. In this implementation, a
109   Fourier transform is used to compute a tapered square difference function,
110   which allows spectral weighting. Because the difference function is tapered,
111   the selection of the period is simplified.
112
113   Paul Brossier, Automatic annotation of musical audio for interactive systems,
114   Chapter 3, Pitch Analysis, PhD thesis, Centre for Digital music, Queen Mary
115   University of London, London, UK, 2006.
116
117 SEE ALSO
118
119   aubioonset(1),
120   aubiotrack(1),
121   aubionotes(1),
122   aubioquiet(1),
123   aubiomfcc(1),
124   and
125   aubiocut(1).
126
127 AUTHOR
128
129   This manual page was written by Paul Brossier <piem@aubio.org>. Permission is
130   granted to copy, distribute and/or modify this document under the terms of
131   the GNU General Public License as published by the Free Software Foundation,
132   either version 3 of the License, or (at your option) any later version.