*/
-#ifndef _AUBIO_ONSET_H
-#define _AUBIO_ONSET_H
+#ifndef AUBIO_ONSET_H
+#define AUBIO_ONSET_H
#ifdef __cplusplus
extern "C" {
\return newly created ::aubio_onset_t
*/
-aubio_onset_t * new_aubio_onset (char_t * method,
+aubio_onset_t * new_aubio_onset (const char_t * method,
uint_t buf_size, uint_t hop_size, uint_t samplerate);
/** execute onset detection
aubio_onset_get_delay().
*/
-void aubio_onset_do (aubio_onset_t *o, fvec_t * input, fvec_t * onset);
+void aubio_onset_do (aubio_onset_t *o, const fvec_t * input, fvec_t * onset);
/** get the time of the latest onset detected, in samples
\return onset detection timestamps (in samples)
*/
-uint_t aubio_onset_get_last (aubio_onset_t *o);
+uint_t aubio_onset_get_last (const aubio_onset_t *o);
/** get the time of the latest onset detected, in seconds
\return onset detection timestamps (in seconds)
*/
-smpl_t aubio_onset_get_last_s (aubio_onset_t *o);
+smpl_t aubio_onset_get_last_s (const aubio_onset_t *o);
/** get the time of the latest onset detected, in milliseconds
\return onset detection timestamps (in milliseconds)
*/
-smpl_t aubio_onset_get_last_ms (aubio_onset_t *o);
+smpl_t aubio_onset_get_last_ms (const aubio_onset_t *o);
+
+/** set onset detection adaptive whitening
+
+ \param o onset detection object as returned by new_aubio_onset()
+ \param apply_adaptive_whitening 1 to enable, 0 to disable
+
+*/
+uint_t aubio_onset_set_adaptive_whitening(aubio_onset_t * o, uint_t apply_adaptive_whitening);
+
+/** get onset detection silence threshold
+
+ \param o onset detection object as returned by new_aubio_onset()
+
+ \return adaptive whitening mode, 1 if enabled, 0 otherwise
+
+*/
+uint_t aubio_onset_get_adaptive_whitening(aubio_onset_t * o);
/** set onset detection silence threshold
*/
uint_t aubio_onset_set_silence(aubio_onset_t * o, smpl_t silence);
+/** get onset detection silence threshold
+
+ \param o onset detection object as returned by new_aubio_onset()
+
+ \return current silence threshold
+
+*/
+smpl_t aubio_onset_get_silence(const aubio_onset_t * o);
+
/** get onset detection function
\param o onset detection object as returned by new_aubio_onset()
\return the current value of the descriptor
*/
-smpl_t aubio_onset_get_descriptor ( aubio_onset_t *o);
+smpl_t aubio_onset_get_descriptor (const aubio_onset_t *o);
/** get thresholded onset detection function
\return the value of the thresholded descriptor
*/
-smpl_t aubio_onset_get_thresholded_descriptor ( aubio_onset_t *o);
+smpl_t aubio_onset_get_thresholded_descriptor (const aubio_onset_t *o);
/** set onset detection peak picking threshold
samples)
*/
-uint_t aubio_onset_get_minioi(aubio_onset_t * o);
+uint_t aubio_onset_get_minioi(const aubio_onset_t * o);
/** get minimum inter onset interval in seconds
seconds)
*/
-smpl_t aubio_onset_get_minioi_s(aubio_onset_t * o);
+smpl_t aubio_onset_get_minioi_s(const aubio_onset_t * o);
/** get minimum inter onset interval in milliseconds
milliseconds)
*/
-smpl_t aubio_onset_get_minioi_ms(aubio_onset_t * o);
+smpl_t aubio_onset_get_minioi_ms(const aubio_onset_t * o);
/** get delay in samples
(in samples)
*/
-uint_t aubio_onset_get_delay(aubio_onset_t * o);
+uint_t aubio_onset_get_delay(const aubio_onset_t * o);
/** get delay in seconds
(in seconds)
*/
-smpl_t aubio_onset_get_delay_s(aubio_onset_t * o);
+smpl_t aubio_onset_get_delay_s(const aubio_onset_t * o);
/** get delay in milliseconds
(in milliseconds)
*/
-smpl_t aubio_onset_get_delay_ms(aubio_onset_t * o);
+smpl_t aubio_onset_get_delay_ms(const aubio_onset_t * o);
/** get onset peak picking threshold
\return current onset detection threshold
*/
-smpl_t aubio_onset_get_threshold(aubio_onset_t * o);
+smpl_t aubio_onset_get_threshold(const aubio_onset_t * o);
/** delete onset detection object
}
#endif
-#endif /* _AUBIO_ONSET_H */
+#endif /* AUBIO_ONSET_H */