source: README.md @ abd326c

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change on this file since abd326c was 050a8f3, checked in by Paul Brossier <piem@piem.org>, 12 years ago

README.md: updated and moved to .md for markdown syntax

  • Property mode set to 100644
File size: 5.0 KB
Line 
1aubio library
2=============
3
4aubio is a library to label music and sounds. It listens to audio signals and
5attempts to detect events. For instance, when a drum is hit, at which frequency
6is a note, or at what tempo is a rhythmic melody.
7
8Its features include segmenting a sound file before each of its attacks,
9performing pitch detection, tapping the beat and producing midi streams from
10live audio.
11
12aubio provide several algorithms and routines, including:
13
14  - several onset detection methods
15  - different pitch detection methods
16  - tempo tracking and beat detection
17  - MFCC (mel-frequency cepstrum coefficients)
18  - FFT and phase vocoder
19  - up/down-sampling
20  - digital filters (low pass, high pass, and more)
21  - spectral filtering
22  - transient/steady-state separation
23  - sound file and audio devices read and write access
24  - various mathematics utilities for music applications
25
26The name aubio comes from _audio_ with a typo: some errors are likely to be
27found in the results.
28
29
30Implementation and Design Basics
31--------------------------------
32
33The library is written in C and is optimised for speed and portability. A
34python module to access the library functions is also provided. A few simple
35applications are included along with the library:
36
37 - `aubioonset` outputs the time stamp of detected note onsets
38 - `aubiotempo` does the same for the tempo
39 - `aubionotes` emits midi-like notes, with an onset, a pitch, and a duration
40 - `aubiocut` slices an input sound and cuts it in several smaller files, sliced
41   at each detected onset or beat
42 - `aubiopitch` attempts to identify a fundamental frequency, or pitch, for each
43   frame of the input sound
44
45The C API is designed in the following way:
46
47    aubio_something_t * new_aubio_something (void * args);
48    audio_something_do (aubio_something_t * t, void * args);
49    smpl_t aubio_something_get_a_parameter (aubio_something_t *t);
50    uint_t aubio_something_set_a_parameter (aubio_something_t *t, smpl_t a_parameter);
51    void del_aubio_something (aubio_something_t * t);
52
53For performance and real-time operation, no memory allocation or freeing take
54place in the `_do` methods. Instead, memory allocation should always take place
55in the `new_` methods, whereas free operations are done in the `del_` methods.
56
57
58Installation and Build Instructions
59-----------------------------------
60
61A number of distributions already include aubio. Check your favorite package
62management system, or have a look at the [download
63page](http://aubio.org/download).
64
65aubio uses [waf](https://code.google.com/p/waf/) to configure, compile, and
66test the source:
67
68    ./waf configure
69    ./waf build
70    sudo ./waf install
71
72aubio compiles on Linux, Mac OS X, Cygwin, and iPhone.
73
74
75Credits and Publications
76------------------------
77
78This library gathers music signal processing algorithms designed at the Centre
79for Digital Music and elsewhere. This software project was developed along the
80research I did at the Centre for Digital Music, Queen Mary, University of
81London. Most of this C code was written by myself, starting from published
82papers and existing code. The header files of each algorithm contains brief
83descriptions and references to the corresponding papers.
84
85Special thanks go Juan Pablo Bello, Chris Duxbury, Samer Abdallah, Alain de
86Cheveigne for their help and publications. Also many thanks to Miguel Ramirez
87and Nicolas Wack for their bug fixing.
88
89Substantial informations about the algorithms and their evaluation are gathered
90in:
91
92  - Paul Brossier, _[Automatic annotation of musical audio for interactive
93    systems](http://aubio.org/phd)_, PhD thesis, Centre for Digital music,
94Queen Mary University of London, London, UK, 2006.
95
96Additional results obtained with this software were discussed in the following
97papers:
98
99  - P. M. Brossier and J. P. Bello and M. D. Plumbley, [Real-time temporal
100    segmentation of note objects in music signals](http://aubio.org/articles/brossier04fastnotes.pdf),
101in _Proceedings of the International Computer Music Conference_, 2004, Miami,
102Florida, ICMA
103
104  -  P. M. Brossier and J. P. Bello and M. D. Plumbley, [Fast labelling of note
105     objects in music signals] (http://aubio.org/articles/brossier04fastnotes.pdf),
106in _Proceedings of the International Symposium on Music Information Retrieval_,
1072004, Barcelona, Spain
108
109
110Contact Info and Mailing List
111-----------------------------
112
113The home page of this project can be found at: http://aubio.org/
114
115Questions, comments, suggestions, and contributions are welcome. Use the
116mailing list: <aubio-user@aubio.org>.
117
118To subscribe to the list, use the mailman form:
119http://lists.aubio.org/listinfo/aubio-user/
120
121Alternatively, you can contact directly the author:
122
123    Paul Brossier <piem@aubio.org>
124
125
126Copyright and License Information
127---------------------------------
128
129Copyright (C) 2003-2013 Paul Brossier <piem@aubio.org>
130
131aubio is free software: you can redistribute it and/or modify it under the
132terms of the GNU General Public License as published by the Free Software
133Foundation, either version 3 of the License, or (at your option) any later
134version.
Note: See TracBrowser for help on using the repository browser.