[aubio_priv.h] only define AUBIO_DBG in debug mode
[aubio.git] / doc / aubioonset.txt
1 NAME
2   aubioonset - a command line tool to extract musical onset times
3
4 SYNOPSIS
5
6   aubioonset source
7   aubioonset [[-i] source] [-o sink]
8              [-r rate] [-B win] [-H hop]
9              [-O method] [-t thres]
10              [-T time-format]
11              [-s sil] [-m] [-f]
12              [-j] [-N miditap-note] [-V miditap-velo]
13              [-v] [-h]
14
15 DESCRIPTION
16
17   aubioonset attempts to detect onset times, the beginning of discrete sound
18   events, in audio signals.
19
20   When started with an input source (-i/--input), the detected onset times are
21   given on the console, in seconds.
22
23   When started without an input source, or with the jack option (-j/--jack),
24   aubioonset starts in jack mode.
25
26 OPTIONS
27
28   This program follows the usual GNU command line syntax, with long options
29   starting with two dashes (--). A summary of options is included below.
30
31   -i, --input source  Run analysis on this audio file. Most uncompressed and
32   compressed are supported, depending on how aubio was built.
33
34   -o, --output sink  Save results in this file. The file will be created on
35   the model of the input file. Onset times are marked by a short wood-block
36   like sound.
37
38   -r, --samplerate rate  Fetch the input source, resampled at the given
39   sampling rate. The rate should be specified in Hertz as an integer. If 0,
40   the sampling rate of the original source will be used. Defaults to 0.
41
42   -B, --bufsize win  The size of the buffer to analyze, that is the length
43   of the window used for spectral and temporal computations. Defaults to 512.
44
45   -H, --hopsize hop  The number of samples between two consecutive analysis.
46   Defaults to 256.
47
48   -O, --onset method  The onset detection method to use. See ONSET METHODS
49   below. Defaults to 'default'.
50
51   -t, --onset-threshold thres  Set the threshold value for the onset peak
52   picking. Values are typically in the range [0.001, 0.900]. Lower threshold
53   values imply more onsets detected. Increasing this threshold should reduce
54   the number of incorrect detections. Defaults to 0.3.
55
56   -M, --minioi value  Set the minimum inter-onset interval, in seconds, the
57   shortest interval between two consecutive onsets. Defaults to 0.020
58
59   -s, --silence sil  Set the silence threshold, in dB, under which the onset
60   will not be detected. A value of -20.0 would eliminate most onsets but the
61   loudest ones. A value of -90.0 would select all onsets. Defaults to -90.0.
62
63   -T, --timeformat format  Set time format (samples, ms, seconds). Defaults to
64   seconds.
65
66   -m, --mix-input  Mix source signal to the output signal before writing to
67   sink.
68
69   -f, --force-overwrite  Overwrite output file if it already exists.
70
71   -j, --jack  Use Jack input/output. You will need a Jack connection
72   controller to feed aubio some signal and listen to its output.
73
74   -N, --miditap-note  Override note value for MIDI tap. Defaults to 69.
75
76   -V, --miditap-velop  Override velocity value for MIDI tap. Defaults to 65.
77
78   -h, --help  Print a short help message and exit.
79
80   -v, --verbose  Be verbose.
81
82 ONSET METHODS
83
84   Available methods are:
85
86   default  Default distance, currently hfc
87
88   Default: 'default' (currently set to hfc)
89
90   energy  Energy based distance
91
92   This function calculates the local energy of the input spectral frame.
93
94   hfc  High-Frequency content
95
96   This method computes the High Frequency Content (HFC) of the input
97   spectral frame. The resulting function is efficient at detecting
98   percussive onsets.
99
100   Paul Masri. Computer modeling of Sound for Transformation and Synthesis of
101   Musical Signal. PhD dissertation, University of Bristol, UK, 1996.
102
103   complex  Complex domain onset detection function
104
105   This function uses information both in frequency and in phase to determine
106   changes in the spectral content that might correspond to musical onsets.
107   It is best suited for complex signals such as polyphonic recordings.
108
109   Christopher Duxbury, Mike E. Davies, and Mark B. Sandler.  Complex domain
110   onset detection for musical signals. In Proceedings of the Digital Audio
111   Effects Conference, DAFx-03, pages 90-93, London, UK, 2003.
112
113   phase  Phase based onset detection function
114
115   This function uses information both in frequency and in phase to determine
116   changes in the spectral content that might correspond to musical onsets. It
117   is best suited for complex signals such as polyphonic recordings.
118
119   Juan-Pablo Bello, Mike P. Davies, and Mark B. Sandler.  Phase-based note
120   onset detection for music signals. In Proceedings of the IEEE International
121   Conference on Acoustics Speech and Signal Processing, pages 441­444,
122   Hong-Kong, 2003.
123
124   specdiff  Spectral difference onset detection function
125
126   Jonhatan Foote and Shingo Uchihashi. The beat spectrum: a new approach to
127   rhythm analysis. In IEEE International Conference on Multimedia and Expo
128   (ICME 2001), pages 881­884, Tokyo, Japan, August 2001.
129
130   kl  Kulback-Liebler onset detection function
131
132   Stephen Hainsworth and Malcom Macleod. Onset detection in music audio
133   signals. In Proceedings of the International Computer Music Conference
134   (ICMC), Singapore, 2003.
135
136   mkl  Modified Kulback-Liebler onset detection function
137
138   Paul Brossier, ``Automatic annotation of musical audio for interactive
139   systems'', Chapter 2, Temporal segmentation, PhD thesis, Centre for
140   Digital music, Queen Mary University of London, London, UK, 2006.
141
142   specflux  Spectral flux
143
144   Simon Dixon, Onset Detection Revisited, in ``Proceedings of the 9th
145   International Conference on Digital Audio Effects'' (DAFx-06), Montreal,
146   Canada, 2006.
147
148 SEE ALSO
149
150   aubiopitch(1),
151   aubiotrack(1),
152   aubionotes(1),
153   aubioquiet(1),
154   aubiomfcc(1),
155   and
156   aubiocut(1).
157
158 AUTHOR
159
160   This manual page was written by Paul Brossier <piem@aubio.org>. Permission is
161   granted to copy, distribute and/or modify this document under the terms of
162   the GNU General Public License as published by the Free Software Foundation,
163   either version 3 of the License, or (at your option) any later version.