|
aubio 0.4.9
|
Onset detection object. More...
Go to the source code of this file.
Typedefs | |
| typedef struct _aubio_onset_t | aubio_onset_t |
| onset detection object | |
Functions | |
| aubio_onset_t * | new_aubio_onset (const char_t *method, uint_t buf_size, uint_t hop_size, uint_t samplerate) |
| create onset detection object | |
| void | aubio_onset_do (aubio_onset_t *o, const fvec_t *input, fvec_t *onset) |
| execute onset detection | |
| uint_t | aubio_onset_get_last (const aubio_onset_t *o) |
| get the time of the latest onset detected, in samples | |
| smpl_t | aubio_onset_get_last_s (const aubio_onset_t *o) |
| get the time of the latest onset detected, in seconds | |
| smpl_t | aubio_onset_get_last_ms (const aubio_onset_t *o) |
| get the time of the latest onset detected, in milliseconds | |
| uint_t | aubio_onset_set_awhitening (aubio_onset_t *o, uint_t enable) |
| set onset detection adaptive whitening | |
| smpl_t | aubio_onset_get_awhitening (aubio_onset_t *o) |
| get onset detection adaptive whitening | |
| uint_t | aubio_onset_set_compression (aubio_onset_t *o, smpl_t lambda) |
| set or disable log compression | |
| smpl_t | aubio_onset_get_compression (aubio_onset_t *o) |
| get onset detection log compression | |
| uint_t | aubio_onset_set_silence (aubio_onset_t *o, smpl_t silence) |
| set onset detection silence threshold | |
| smpl_t | aubio_onset_get_silence (const aubio_onset_t *o) |
| get onset detection silence threshold | |
| smpl_t | aubio_onset_get_descriptor (const aubio_onset_t *o) |
| get onset detection function | |
| smpl_t | aubio_onset_get_thresholded_descriptor (const aubio_onset_t *o) |
| get thresholded onset detection function | |
| uint_t | aubio_onset_set_threshold (aubio_onset_t *o, smpl_t threshold) |
| set onset detection peak picking threshold | |
| uint_t | aubio_onset_set_minioi (aubio_onset_t *o, uint_t minioi) |
| set minimum inter onset interval in samples | |
| uint_t | aubio_onset_set_minioi_s (aubio_onset_t *o, smpl_t minioi) |
| set minimum inter onset interval in seconds | |
| uint_t | aubio_onset_set_minioi_ms (aubio_onset_t *o, smpl_t minioi) |
| set minimum inter onset interval in milliseconds | |
| uint_t | aubio_onset_set_delay (aubio_onset_t *o, uint_t delay) |
| set delay in samples | |
| uint_t | aubio_onset_set_delay_s (aubio_onset_t *o, smpl_t delay) |
| set delay in seconds | |
| uint_t | aubio_onset_set_delay_ms (aubio_onset_t *o, smpl_t delay) |
| set delay in milliseconds | |
| uint_t | aubio_onset_get_minioi (const aubio_onset_t *o) |
| get minimum inter onset interval in samples | |
| smpl_t | aubio_onset_get_minioi_s (const aubio_onset_t *o) |
| get minimum inter onset interval in seconds | |
| smpl_t | aubio_onset_get_minioi_ms (const aubio_onset_t *o) |
| get minimum inter onset interval in milliseconds | |
| uint_t | aubio_onset_get_delay (const aubio_onset_t *o) |
| get delay in samples | |
| smpl_t | aubio_onset_get_delay_s (const aubio_onset_t *o) |
| get delay in seconds | |
| smpl_t | aubio_onset_get_delay_ms (const aubio_onset_t *o) |
| get delay in milliseconds | |
| smpl_t | aubio_onset_get_threshold (const aubio_onset_t *o) |
| get onset peak picking threshold | |
| uint_t | aubio_onset_set_default_parameters (aubio_onset_t *o, const char_t *onset_mode) |
| set default parameters | |
| void | aubio_onset_reset (aubio_onset_t *o) |
| reset onset detection | |
| void | del_aubio_onset (aubio_onset_t *o) |
| delete onset detection object | |
Onset detection object.
The following routines compute the onset detection function and detect peaks in these functions. When onsets are found above a given silence threshold, and after a minimum inter-onset interval, the output vector returned by aubio_onset_do() is filled with 1. Otherwise, the output vector remains 0.
The peak-picking threshold, the silence threshold, and the minimum inter-onset interval can be adjusted during the execution of the aubio_onset_do routine using the corresponding functions.
Definition in file onset.h.
| typedef struct _aubio_onset_t aubio_onset_t |
onset detection object
| void aubio_onset_do | ( | aubio_onset_t * | o, |
| const fvec_t * | input, | ||
| fvec_t * | onset ) |
execute onset detection
| o | onset detection object as returned by new_aubio_onset() |
| input | new audio vector of length hop_size |
| onset | output vector of length 1, containing 0 if no onset was found, and a value equal or greater than 1 otherwise |
When no onset was detected, the first element of the output vector onset is set to 0.
When an onset is found, the first element of the output vector onset is set to offset = 1 + a where a is a number in the range[0, 1].
The final onset detection time, in samples, can be obtained with aubio_onset_get_last(). It can also be derived from offset as follows:
where total_frames is the total number of frames processed so far, and delay is the current delay of the onset object, as returned by aubio_onset_get_delay().
References aubio_onset_do().
Referenced by aubio_onset_do().
| smpl_t aubio_onset_get_awhitening | ( | aubio_onset_t * | o | ) |
get onset detection adaptive whitening
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_awhitening().
Referenced by aubio_onset_get_awhitening().
| smpl_t aubio_onset_get_compression | ( | aubio_onset_t * | o | ) |
get onset detection log compression
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_compression().
Referenced by aubio_onset_get_compression().
| uint_t aubio_onset_get_delay | ( | const aubio_onset_t * | o | ) |
get delay in samples
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_delay().
Referenced by aubio_onset_get_delay().
| smpl_t aubio_onset_get_delay_ms | ( | const aubio_onset_t * | o | ) |
get delay in milliseconds
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_delay_ms().
Referenced by aubio_onset_get_delay_ms().
| smpl_t aubio_onset_get_delay_s | ( | const aubio_onset_t * | o | ) |
get delay in seconds
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_delay_s().
Referenced by aubio_onset_get_delay_s().
| smpl_t aubio_onset_get_descriptor | ( | const aubio_onset_t * | o | ) |
get onset detection function
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_descriptor().
Referenced by aubio_onset_get_descriptor().
| uint_t aubio_onset_get_last | ( | const aubio_onset_t * | o | ) |
get the time of the latest onset detected, in samples
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_last().
Referenced by aubio_onset_get_last().
| smpl_t aubio_onset_get_last_ms | ( | const aubio_onset_t * | o | ) |
get the time of the latest onset detected, in milliseconds
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_last_ms().
Referenced by aubio_onset_get_last_ms().
| smpl_t aubio_onset_get_last_s | ( | const aubio_onset_t * | o | ) |
get the time of the latest onset detected, in seconds
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_last_s().
Referenced by aubio_onset_get_last_s().
| uint_t aubio_onset_get_minioi | ( | const aubio_onset_t * | o | ) |
get minimum inter onset interval in samples
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_minioi().
Referenced by aubio_onset_get_minioi().
| smpl_t aubio_onset_get_minioi_ms | ( | const aubio_onset_t * | o | ) |
get minimum inter onset interval in milliseconds
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_minioi_ms().
Referenced by aubio_onset_get_minioi_ms().
| smpl_t aubio_onset_get_minioi_s | ( | const aubio_onset_t * | o | ) |
get minimum inter onset interval in seconds
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_minioi_s().
Referenced by aubio_onset_get_minioi_s().
| smpl_t aubio_onset_get_silence | ( | const aubio_onset_t * | o | ) |
get onset detection silence threshold
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_silence().
Referenced by aubio_onset_get_silence().
| smpl_t aubio_onset_get_threshold | ( | const aubio_onset_t * | o | ) |
get onset peak picking threshold
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_threshold().
Referenced by aubio_onset_get_threshold().
| smpl_t aubio_onset_get_thresholded_descriptor | ( | const aubio_onset_t * | o | ) |
get thresholded onset detection function
| o | onset detection object as returned by new_aubio_onset() |
References aubio_onset_get_thresholded_descriptor().
Referenced by aubio_onset_get_thresholded_descriptor().
| void aubio_onset_reset | ( | aubio_onset_t * | o | ) |
reset onset detection
| o | onset detection object as returned by new_aubio_onset() |
Reset current time and last onset to 0.
This function is called at the end of new_aubio_onset().
References aubio_onset_reset().
Referenced by aubio_onset_reset().
| uint_t aubio_onset_set_awhitening | ( | aubio_onset_t * | o, |
| uint_t | enable ) |
set onset detection adaptive whitening
| o | onset detection object as returned by new_aubio_onset() |
| enable | 1 to enable, 0 to disable |
References aubio_onset_set_awhitening().
Referenced by aubio_onset_set_awhitening().
| uint_t aubio_onset_set_compression | ( | aubio_onset_t * | o, |
| smpl_t | lambda ) |
set or disable log compression
| o | onset detection object as returned by new_aubio_onset() |
| lambda | logarithmic compression factor, 0 to disable |
References aubio_onset_set_compression().
Referenced by aubio_onset_set_compression().
| uint_t aubio_onset_set_default_parameters | ( | aubio_onset_t * | o, |
| const char_t * | onset_mode ) |
set default parameters
| o | onset detection object as returned by new_aubio_onset() |
| onset_mode | detection mode to adjust |
This function is called at the end of new_aubio_onset().
References aubio_onset_set_default_parameters().
Referenced by aubio_onset_set_default_parameters().
| uint_t aubio_onset_set_delay | ( | aubio_onset_t * | o, |
| uint_t | delay ) |
set delay in samples
| o | onset detection object as returned by new_aubio_onset() |
| delay | constant system delay to take back from detection time (in samples) |
References aubio_onset_set_delay().
Referenced by aubio_onset_set_delay().
| uint_t aubio_onset_set_delay_ms | ( | aubio_onset_t * | o, |
| smpl_t | delay ) |
set delay in milliseconds
| o | onset detection object as returned by new_aubio_onset() |
| delay | constant system delay to take back from detection time (in milliseconds) |
References aubio_onset_set_delay_ms().
Referenced by aubio_onset_set_delay_ms().
| uint_t aubio_onset_set_delay_s | ( | aubio_onset_t * | o, |
| smpl_t | delay ) |
set delay in seconds
| o | onset detection object as returned by new_aubio_onset() |
| delay | constant system delay to take back from detection time (in seconds) |
References aubio_onset_set_delay_s().
Referenced by aubio_onset_set_delay_s().
| uint_t aubio_onset_set_minioi | ( | aubio_onset_t * | o, |
| uint_t | minioi ) |
set minimum inter onset interval in samples
| o | onset detection object as returned by new_aubio_onset() |
| minioi | minimum interval between two consecutive onsets (in samples) |
References aubio_onset_set_minioi().
Referenced by aubio_onset_set_minioi().
| uint_t aubio_onset_set_minioi_ms | ( | aubio_onset_t * | o, |
| smpl_t | minioi ) |
set minimum inter onset interval in milliseconds
| o | onset detection object as returned by new_aubio_onset() |
| minioi | minimum interval between two consecutive onsets (in milliseconds) |
References aubio_onset_set_minioi_ms().
Referenced by aubio_onset_set_minioi_ms().
| uint_t aubio_onset_set_minioi_s | ( | aubio_onset_t * | o, |
| smpl_t | minioi ) |
set minimum inter onset interval in seconds
| o | onset detection object as returned by new_aubio_onset() |
| minioi | minimum interval between two consecutive onsets (in seconds) |
References aubio_onset_set_minioi_s().
Referenced by aubio_onset_set_minioi_s().
| uint_t aubio_onset_set_silence | ( | aubio_onset_t * | o, |
| smpl_t | silence ) |
set onset detection silence threshold
| o | onset detection object as returned by new_aubio_onset() |
| silence | new silence detection threshold |
References aubio_onset_set_silence().
Referenced by aubio_onset_set_silence().
| uint_t aubio_onset_set_threshold | ( | aubio_onset_t * | o, |
| smpl_t | threshold ) |
set onset detection peak picking threshold
| o | onset detection object as returned by new_aubio_onset() |
| threshold | new peak-picking threshold |
References aubio_onset_set_threshold().
Referenced by aubio_onset_set_threshold().
| void del_aubio_onset | ( | aubio_onset_t * | o | ) |
delete onset detection object
| o | onset detection object to delete |
References del_aubio_onset().
Referenced by del_aubio_onset().
| aubio_onset_t * new_aubio_onset | ( | const char_t * | method, |
| uint_t | buf_size, | ||
| uint_t | hop_size, | ||
| uint_t | samplerate ) |
create onset detection object
| method | onset detection type as specified in specdesc.h |
| buf_size | buffer size for phase vocoder |
| hop_size | hop size for phase vocoder |
| samplerate | sampling rate of the input signal |
References new_aubio_onset().
Referenced by new_aubio_onset().