Changeset ebfbd15
- Timestamp:
- May 17, 2006, 9:42:17 PM (18 years ago)
- Branches:
- feature/autosink, feature/cnn, feature/cnn_org, feature/constantq, feature/crepe, feature/crepe_org, feature/pitchshift, feature/pydocstrings, feature/timestretch, fix/ffmpeg5, master, pitchshift, sampler, timestretch, yinfft+
- Children:
- ab0b69b
- Parents:
- 78fa561
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/beattracking.h
r78fa561 rebfbd15 1 1 /* 2 2 Copyright (C) 2003 Matthew Davies and Paul Brossier 3 3 4 5 6 7 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 2 of the License, or 7 (at your option) any later version. 8 8 9 10 11 12 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 13 14 15 16 14 You should have received a copy of the GNU General Public License 15 along with this program; if not, write to the Free Software 16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 17 17 18 18 */ 19 19 20 /** \file 21 22 Beat tracking using a context dependant model 23 24 This file implement the causal beat tracking algorithm designed by Matthew 25 Davies and described in the following articles: 26 27 Matthew E. P. Davies and Mark D. Plumbley. Causal tempo tracking of audio. 28 In Proceedings of the International Symposium on Music Information Retrieval 29 (ISMIR), pages 164169, Barcelona, Spain, 2004. 30 31 Matthew E. P. Davies, Paul Brossier, and Mark D. Plumbley. Beat tracking 32 towards automatic musical accompaniment. In Proceedings of the Audio 33 Engeeniring Society 118th Convention, Barcelona, Spain, May 2005. 34 35 */ 20 36 #ifndef BEATTRACKING_H 21 37 #define BEATTRACKING_H … … 25 41 #endif 26 42 27 /** 28 * beat tracking object 29 */ 43 /** beat tracking object */ 30 44 typedef struct _aubio_beattracking_t aubio_beattracking_t; 31 /** 32 * create beat tracking object 33 * \param winlen: frame size [512] 34 * \param channels number (not functionnal) [1] */ 45 46 /** create beat tracking object 47 48 \param winlen: frame size [512] 49 \param channels number (not functionnal) [1] 50 51 */ 35 52 aubio_beattracking_t * new_aubio_beattracking(uint_t winlen, uint_t channels); 36 53 /** track the beat 37 * \param bt beat tracking object 38 * \param dfframes current input detection function frame. already smoothed by 39 * adaptive median threshold. 40 * \param out stored tactus candidate positions 41 */ 54 55 \param bt beat tracking object 56 \param dfframes current input detection function frame, smoothed by 57 adaptive median threshold. 58 \param out stored detected beat locations 59 60 */ 42 61 void aubio_beattracking_do(aubio_beattracking_t * bt, fvec_t * dfframes, fvec_t * out); 43 /** 44 * delete beat tracker object 45 * \param p beat tracking object 46 */ 62 /** delete beat tracking object 63 64 \param p beat tracking object 65 66 */ 47 67 void del_aubio_beattracking(aubio_beattracking_t * p); 48 68
Note: See TracChangeset
for help on using the changeset viewer.