History

add some documentation add some documentation

Paul Brossier committed 20 years ago

Commit d88ea061 parent 3b3ec6c7 files · +42 −4Browse files

Unified · Split

7 files
  1. src/fft.h +3 −0
  2. src/filter.h +1 −2
  3. src/hist.h +5 −0
  4. src/mathutils.h +11 −2
  5. src/peakpick.h +11 −0
  6. src/pitchmcomb.h +1 −0
  7. src/tempo.h +10 −0
src/fft.h+3−0
@@ -38,8 +38,10 @@ · 37 unmodified lines
3838 #endif
3939 #else
4040 #if FFTW3F_SUPPORT
41+/** fft data type */
4142 #define FFTW_TYPE float
4243 #else
44+/** fft data type */
4345 #define FFTW_TYPE double
4446 #endif
4547 #endif
@@ -48,6 +50,7 @@ · 2 unmodified lines
4850 extern "C" {
4951 #endif
5052
53+/** fft data type */
5154 typedef FFTW_TYPE fft_data_t;
5255
5356 /** FFT object
src/filter.h+1−2
@@ -66,8 +66,7 @@ void aubio_filter_do_outplace(aubio_filter_t * b, fvec_t * in, fvec_t * out); · 65 unmodified lines
6666 void aubio_filter_do_filtfilt(aubio_filter_t * b, fvec_t * in, fvec_t * tmp);
6767 /** create new IIR filter
6868
69− \param b vector of forward coefficients
70− \param a vector of feedback coefficients
69+ \param samplerate signal sampling rate
7170 \param order order of the filter (number of coefficients)
7271
7372 */
src/hist.h+5−0
@@ -42,10 +42,15 @@ typedef struct _aubio_hist_t aubio_hist_t; · 41 unmodified lines
4242 aubio_hist_t * new_aubio_hist(smpl_t flow, smpl_t fhig, uint_t nelems, uint_t channels);
4343 /** histogram deletion */
4444 void del_aubio_hist(aubio_hist_t *s);
45+/** compute the histogram */
4546 void aubio_hist_do(aubio_hist_t *s, fvec_t * input);
47+/** compute the histogram ignoring null elements */
4648 void aubio_hist_do_notnull(aubio_hist_t *s, fvec_t * input);
49+/** compute the mean of the histogram */
4750 smpl_t aubio_hist_mean(aubio_hist_t *s);
51+/** weight the histogram */
4852 void aubio_hist_weigth(aubio_hist_t *s);
53+/** compute dynamic histogram for non-null elements */
4954 void aubio_hist_dyn_notnull (aubio_hist_t *s, fvec_t *input);
5055
5156 #ifdef __cplusplus
src/mathutils.h+11−2
@@ -118,13 +118,14 @@ smpl_t vec_local_hfc(fvec_t * f); · 117 unmodified lines
118118 * \bug should not use POW :(
119119 */
120120 smpl_t vec_alpha_norm(fvec_t * DF, smpl_t alpha);
121−/* dc(min) removal */
121+/** dc(min) removal */
122122 void vec_dc_removal(fvec_t * mag);
123123 /** alpha normalisation */
124124 void vec_alpha_normalise(fvec_t * mag, uint_t alpha);
125−
125+/** add a constant to all members of a vector */
126126 void vec_add(fvec_t * mag, smpl_t threshold);
127127
128+/** compute adaptive threshold of input vector */
128129 void vec_adapt_thres(fvec_t * vec, fvec_t * tmp,
129130 uint_t win_post, uint_t win_pre);
130131 /** adaptative thresholding
@@ -181,14 +182,22 @@ smpl_t aubio_quadfrac(smpl_t s0, smpl_t s1, smpl_t s2, smpl_t pf); · 50 unmodified lines
181182 /** returns 1 if X1 is a peak and positive */
182183 uint_t vec_peakpick(fvec_t * input, uint_t pos);
183184
185+/** convert frequency bin to midi value */
184186 smpl_t aubio_bintomidi(smpl_t bin, smpl_t samplerate, smpl_t fftsize);
187+/** convert midi value to frequency bin */
185188 smpl_t aubio_miditobin(smpl_t midi, smpl_t samplerate, smpl_t fftsize);
189+/** convert frequency bin to frequency (Hz) */
186190 smpl_t aubio_bintofreq(smpl_t bin, smpl_t samplerate, smpl_t fftsize);
191+/** convert frequency (Hz) to frequency bin */
187192 smpl_t aubio_freqtobin(smpl_t freq, smpl_t samplerate, smpl_t fftsize);
193+/** convert frequency (Hz) to midi value (0-128) */
188194 smpl_t aubio_freqtomidi(smpl_t freq);
195+/** convert midi value (0-128) to frequency (Hz) */
189196 smpl_t aubio_miditofreq(smpl_t midi);
190197
198+/** check if current buffer level is under a given threshold */
191199 uint_t aubio_silence_detection(fvec_t * ibuf, smpl_t threshold);
200+/** get the current buffer level */
192201 smpl_t aubio_level_detection(fvec_t * ibuf, smpl_t threshold);
193202 /**
194203 * calculate normalised autocorrelation function
src/peakpick.h+11−0
@@ -30,20 +30,31 @@ · 29 unmodified lines
3030 extern "C" {
3131 #endif
3232
33+/** function pointer to thresholding function */
3334 typedef smpl_t (*aubio_thresholdfn_t)(fvec_t *input);
35+/** function pointer to peak-picking function */
3436 typedef uint_t (*aubio_pickerfn_t)(fvec_t *input, uint_t pos);
37+/** peak-picker structure */
3538 typedef struct _aubio_pickpeak_t aubio_pickpeak_t;
3639
40+/** peak-picker creation function */
3741 aubio_pickpeak_t * new_aubio_peakpicker(smpl_t threshold);
42+/** real time peak picking function */
3843 uint_t aubio_peakpick_pimrt(fvec_t * DF, aubio_pickpeak_t * p);
3944 /** function added by Miguel Ramirez to return the onset detection amplitude in peakval */
4045 uint_t aubio_peakpick_pimrt_wt( fvec_t* DF, aubio_pickpeak_t* p, smpl_t* peakval );
46+/** get current peak value */
4147 smpl_t aubio_peakpick_pimrt_getval(aubio_pickpeak_t * p);
48+/** destroy peak picker structure */
4249 void del_aubio_peakpicker(aubio_pickpeak_t * p);
4350
51+/** set peak picking threshold */
4452 void aubio_peakpicker_set_threshold(aubio_pickpeak_t * p, smpl_t threshold);
53+/** get peak picking threshold */
4554 smpl_t aubio_peakpicker_get_threshold(aubio_pickpeak_t * p);
55+/** set peak picker thresholding function */
4656 void aubio_peakpicker_set_thresholdfn(aubio_pickpeak_t * p, aubio_thresholdfn_t thresholdfn);
57+/** get peak picker thresholding function */
4758 aubio_thresholdfn_t aubio_peakpicker_get_thresholdfn(aubio_pickpeak_t * p);
4859
4960 #ifdef __cplusplus
src/pitchmcomb.h+1−0
@@ -49,6 +49,7 @@ typedef struct _aubio_pitchmcomb_t aubio_pitchmcomb_t; · 48 unmodified lines
4949
5050 */
5151 smpl_t aubio_pitchmcomb_detect(aubio_pitchmcomb_t * p, cvec_t * fftgrain);
52+/** select the best candidates */
5253 uint_t aubio_pitch_cands(aubio_pitchmcomb_t * p, cvec_t * fftgrain, smpl_t * cands);
5354 /** creation of the pitch detection object
5455
src/tempo.h+10−0
@@ -17,6 +17,15 @@ · 16 unmodified lines
1717
1818 */
1919
20+/** \file
21+
22+ Tempo detection driver
23+
24+ This object stores all the memory required for tempo detection algorithm
25+ and returns the estimated beat locations.
26+
27+*/
28+
2029 #ifndef TEMPO_H
2130 #define TEMPO_H
2231
@@ -24,6 +33,7 @@ · 1 unmodified line
2433 extern "C" {
2534 #endif
2635
36+/** tempo detection structure */
2737 typedef struct _aubio_tempo_t aubio_tempo_t;
2838
2939 /** create tempo detection object */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t