source: src/pitchdetection.h @ 650e39b

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change on this file since 650e39b was 650e39b, checked in by Paul Brossier <piem@altern.org>, 19 years ago

add yinfft method, make it default for pd plugin
add yinfft method, make it default for pd plugin

  • Property mode set to 100644
File size: 2.0 KB
RevLine 
[96fb8ad]1/*
2   Copyright (C) 2003 Paul Brossier
3
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
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
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*/
18
19#ifndef PITCHAUTOTCORR_H
20#define PITCHAUTOTCORR_H
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
26typedef enum {
[5e9c68a]27        aubio_pitch_yin,
28        aubio_pitch_mcomb,
29        aubio_pitch_schmitt,
[650e39b]30        aubio_pitch_fcomb,
31        aubio_pitch_yinfft
[96fb8ad]32} aubio_pitchdetection_type;
33
34typedef enum {
[5e9c68a]35        aubio_pitchm_freq,
36        aubio_pitchm_midi,
37        aubio_pitchm_cent,
38        aubio_pitchm_bin
[96fb8ad]39} aubio_pitchdetection_mode;
40
41typedef struct _aubio_pitchdetection_t aubio_pitchdetection_t;
42       
43smpl_t aubio_pitchdetection(aubio_pitchdetection_t * p, fvec_t * ibuf);
[c078336]44smpl_t aubio_pitchdetection_mcomb(aubio_pitchdetection_t *p, fvec_t * ibuf);
45smpl_t aubio_pitchdetection_yin(aubio_pitchdetection_t *p, fvec_t *ibuf);
46smpl_t aubio_pitchdetection_schmitt(aubio_pitchdetection_t *p, fvec_t *ibuf);
47smpl_t aubio_pitchdetection_fcomb(aubio_pitchdetection_t *p, fvec_t *ibuf);
[650e39b]48smpl_t aubio_pitchdetection_yinfft(aubio_pitchdetection_t *p, fvec_t *ibuf);
[96fb8ad]49
[f8a38c5]50void aubio_pitchdetection_set_yinthresh(aubio_pitchdetection_t *p, smpl_t thres);
[96fb8ad]51void del_aubio_pitchdetection(aubio_pitchdetection_t * p);
52
53aubio_pitchdetection_t * new_aubio_pitchdetection(uint_t bufsize, 
54                uint_t hopsize, 
55                uint_t channels,
56                uint_t samplerate,
57                aubio_pitchdetection_type type,
58                aubio_pitchdetection_mode mode);
59
60#ifdef __cplusplus
61}
62#endif
63
64#endif /*PITCHDETECTION_H*/ 
Note: See TracBrowser for help on using the repository browser.