OnsetsDS Struct Reference

The main data structure for the onset detection routine. More...

#include <onsetsds.h>

Collaboration diagram for OnsetsDS:

Collaboration graph
[legend]

Data Fields

float * data
float * psp
 Peak Spectral Profile - size is numbins+2, data is stored in order dc through to nyquist.
float * odfvals
float * sortbuf
float * other
OdsPolarBufcurr
float srate
 The sampling rate of the input audio. Set by onsetsds_init().
float relaxtime
 Do NOT set this directly. Use onsetsds_setrelax() which will also update relaxcoef.
float relaxcoef
 Relaxation coefficient (memory coefficient). See also onsetsds_setrelax().
float floor
float odfparam
float normfactor
 Value used internally to scale ODF value according to the FFT frame size. Automatically set by onsetsds_init().
float odfvalpost
float odfvalpostprev
float thresh
int odftype
 Choose from onsetsds_odf_types.
int whtype
 Choose from onsetsds_wh_types.
int fftformat
 Choose from onsetsds_fft_types.
bool whiten
 Whether to apply whitening - onsetsds_init() decides this on your behalf.
bool detected
 Output val - true if onset detected in curr frame.
bool logmags
bool med_odd
 Whether median span is odd or not (used internally).
unsigned int medspan
 Number of frames used in median calculation.
unsigned int mingap
 Size of enforced gap between detections, measured in FFT frames.
unsigned int gapleft
size_t fftsize
size_t numbins

Detailed Description

The main data structure for the onset detection routine.


Field Documentation

float* OnsetsDS::data

"data" is a pointer to the memory that must be EXTERNALLY allocated. Other pointers will point to locations within this memory.

float * OnsetsDS::psp

Peak Spectral Profile - size is numbins+2, data is stored in order dc through to nyquist.

float * OnsetsDS::odfvals

float * OnsetsDS::sortbuf

float * OnsetsDS::other

OdsPolarBuf* OnsetsDS::curr

float OnsetsDS::srate

The sampling rate of the input audio. Set by onsetsds_init().

float OnsetsDS::relaxtime

Do NOT set this directly. Use onsetsds_setrelax() which will also update relaxcoef.

float OnsetsDS::relaxcoef

Relaxation coefficient (memory coefficient). See also onsetsds_setrelax().

float OnsetsDS::floor

floor - the lowest value that a PSP magnitude can take.

float OnsetsDS::odfparam

A parameter for the ODF. For most this is a magnitude threshold for a single bin to be considered; but for ODS_ODF_MKL it is the "epsilon" parameter.

float OnsetsDS::normfactor

Value used internally to scale ODF value according to the FFT frame size. Automatically set by onsetsds_init().

float OnsetsDS::odfvalpost

float OnsetsDS::odfvalpostprev

float OnsetsDS::thresh

Threshold (of ODF value, after median processing) for detection. Values between 0 and 1 are expected, but outside this range may sometimes be appropriate too.

int OnsetsDS::odftype

Choose from onsetsds_odf_types.

int OnsetsDS::whtype

Choose from onsetsds_wh_types.

int OnsetsDS::fftformat

Choose from onsetsds_fft_types.

bool OnsetsDS::whiten

Whether to apply whitening - onsetsds_init() decides this on your behalf.

bool OnsetsDS::detected

Output val - true if onset detected in curr frame.

bool OnsetsDS::logmags

NOT YET USED: Whether to convert magnitudes to log domain before processing. This is done as follows: Magnitudes below a log-lower-limit threshold (ODS_LOG_LOWER_LIMIT) are pushed up to that threshold (to avoid log(0) infinity problems), then the log is taken. The values are re-scaled to a similar range as the linear-domain values (assumed to lie between zero and approximately one) by subtracting log(ODS_LOG_LOWER_LIMIT) and then dividing by abs(log(ODS_LOG_LOWER_LIMIT)).

bool OnsetsDS::med_odd

Whether median span is odd or not (used internally).

unsigned int OnsetsDS::medspan

Number of frames used in median calculation.

unsigned int OnsetsDS::mingap

Size of enforced gap between detections, measured in FFT frames.

unsigned int OnsetsDS::gapleft

size_t OnsetsDS::fftsize

size_t OnsetsDS::numbins


The documentation for this struct was generated from the following file: