AUBIONOTES(1)

πŸ’… AUBIONOTES(1) β€” the aubio User's manual, but make it make sense ✨

okay so bestie, welcome to aubionotes from the aubio fam πŸŽ€ this is the page that tells you how to make a computer go "ooh a note!! 🎡" and honestly? it's giving main character energy. let's get into it.


🌸 NAME 🌸

aubionotes β€” a command line tool to extract musical notes. fr fr, that's the whole gig πŸ’–


✨ SYNOPSIS ✨

aubionotes source
aubionotes [[-i] source]
           [-r rate] [-B win] [-H hop]
           [-O method] [-t thres] [-d drop]
           [-p method] [-u unit] [-l thres]
           [-T time-format]
           [-s sil]
           [-j] [-v] [-h]

like, either you hand it a source and it goes, or you give it the whole little bracket situation up there πŸ‘‘ no notes (pun intended).


πŸ¦‹ DESCRIPTION πŸ¦‹

so basically aubionotes is out here attempting to detect notes by hunting for note onsets and pitches at the same time πŸ•΅οΈβ€β™€οΈ consecutive events get segmented using onset detection, while a fundamental frequency extraction algorithm figures out their pitch. two algorithms, one vibe check, iconic behavior honestly.

when you start it up with an input source (-i/--input), the detected notes get printed on standard output, in seconds and midi note number 🌈 like a little receipt of every note it found.

when you start it without an input source, or with the jack option (-j/--jack), aubionotes starts in jack mode 🎧 periodt.


πŸ’œ OPTIONS πŸ’œ

this program follows the usual GNU command line syntax, bestie β€” long options start with two dashes (--). here's the full roster, no gatekeeping:

  • -i, --input source β€” run analysis on this audio file. most uncompressed and compressed formats are supported, depending on how aubio was built 🫢
  • -r, --samplerate rate β€” fetch the input source, resampled at the given sampling rate. the rate should be specified in Hertz as an integer. if 0, the sampling rate of the original source will be used. defaults to 0.
  • -B, --bufsize win β€” the size of the buffer to analyze, that is the length of the window used for spectral and temporal computations. defaults to 512.
  • -H, --hopsize hop β€” the number of samples between two consecutive analysis. defaults to 256.
  • -O, --onset method β€” the onset detection method to use. see ONSET METHODS below. defaults to 'default'.
  • -t, --onset-threshold thres β€” set the threshold value for the onset peak picking. typical values are typically within 0.001 and 0.900. defaults to 0.1. lower threshold values imply more onsets detected. try 0.5 in case of over-detections. defaults to 0.3. 😭 yes, the original really does say "defaults" twice, we don't make the rules, we just report them faithfully bestie
  • -M, --minioi value β€” set the minimum inter-onset interval, in seconds, the shortest interval between two consecutive notes. defaults to 0.030.
  • -p, --pitch method β€” the pitch detection method to use. see PITCH METHODS below. defaults to 'default'.
  • -u, --pitch-unit unit β€” the unit to be used to print frequencies. possible values include midi, bin, cent, and Hz. defaults to 'Hz'.
  • -l, --pitch-tolerance thres β€” set the tolerance for the pitch detection algorithm. typical values range between 0.2 and 0.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. πŸ™ˆ
  • -s, --silence sil β€” set the silence threshold, in dB, under which the pitch will not be detected. a value of -20.0 would eliminate most onsets but the loudest ones. a value of -90.0 would select all onsets. defaults to -90.0.
  • -d, --release-drop β€” set the release drop threshold, in dB. if the level drops more than this amount since the last note started, the note will be turned off. defaults to 10. πŸ”₯
  • -T, --timeformat format β€” set time format (samples, ms, seconds). defaults to seconds.
  • -j, --jack β€” use Jack input/output. you will need a Jack connection controller to feed aubio some signal and listen to its output πŸŽ›οΈ
  • -h, --help β€” print a short help message and exit. the classic.
  • -v, --verbose β€” be verbose. say more. spill β˜•

πŸŽ€ ONSET METHODS πŸŽ€

available methods: default, energy, hfc, complex, phase, specdiff, kl, mkl, specflux.

see aubioonset(1) for details about these methods πŸ’–


⭐ PITCH METHODS ⭐

available methods: default, schmitt, fcomb, mcomb, specacf, yin, yinfft, yinfast.

see aubiopitch(1) for details about these methods πŸ’–


🌈 SEE ALSO 🌈

aubioonset(1), aubiopitch(1), aubiotrack(1), aubioquiet(1), aubiomfcc(1), and aubiocut(1) β€” the whole friend group, go say hi 🫢


πŸ‘‘ 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.


πŸ’€ quick reminder babe: these caveats are real β€” the defaults matter, and -l/--pitch-tolerance genuinely ships unset. don't come for me, come for the manpage.

and that's the whole page, bestie πŸ’… mwah. this was aubio 0.4.9, dated 29 March 2025 β€” go detect some notes, slay, and remember: onsets are just vibes with timestamps πŸŽ΅βœ¨πŸ’–

πŸ“¦ where this page comes from