Mercurial > hg > audio-file-loader
view libs/aubioFullOSXUni/include/aubio/onset.h @ 1:ba2a17cf81bf
first working version of audio file loder. Loads bach clip from the apps->audio-file-loader->bin->data->sounds foler. Three classes: SoundFileLoader does the loading and parsing of thefile with libSndFile. audio samples are kept in AudioFile and analysis of features are kept in AudioAnalysis, at this stage just chromagramm and basic energy
author | Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk> |
---|---|
date | Sun, 04 Sep 2011 22:45:35 +0100 |
parents | bcb0d40158f4 |
children |
line wrap: on
line source
/* Copyright (C) 2006 Paul Brossier This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** \file Onset detection driver 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 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 routine using the corresponding functions. */ #ifndef ONSET_H #define ONSET_H #ifdef __cplusplus extern "C" { #endif /** onset detection object */ typedef struct _aubio_onset_t aubio_onset_t; /** create onset detection object \param type_onset onset detection type as specified in onsetdetection.h \param buf_size buffer size for phase vocoder \param hop_size hop size for phase vocoder \param channels number of channels */ aubio_onset_t * new_aubio_onset (aubio_onsetdetection_type type_onset, ba_uint_t buf_size, ba_uint_t hop_size, ba_uint_t channels); /** execute onset detection \param o onset detection object as returned by new_aubio_onset \param input new audio vector of length hop_size \param onset output vector, 1 if onset is found, 0 otherwise */ void aubio_onset(aubio_onset_t *o, fvec_t * input, fvec_t * onset); /** set onset detection silence threshold \param o onset detection object as returned by new_aubio_onset \param silence new silence detection threshold */ void aubio_onset_set_silence(aubio_onset_t * o, smpl_t silence); /** set onset detection peak picking threshold \param o onset detection object as returned by new_aubio_onset \param threshold new peak-picking threshold */ void aubio_onset_set_threshold(aubio_onset_t * o, smpl_t threshold); /** set minimum inter onset interval \param o onset detection object as returned by new_aubio_onset \param minioi minimum number of frames between onsets (in multiple of hop_size/samplerare) */ void aubio_onset_set_minioi(aubio_onset_t * o, ba_uint_t minioi); /** delete onset detection object \param o onset detection object to delete */ void del_aubio_onset(aubio_onset_t * o); #ifdef __cplusplus } #endif #endif /* ONSET_H */