source: src/pitch/pitchfcomb.h @ 180eeca

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change on this file since 180eeca was 8040cca, checked in by Paul Brossier <piem@piem.org>, 15 years ago

src/pitch/pitchfcomb.c: update prototypes, make multichannel, remove unneeded samplerate parameter, now returns bin

  • Property mode set to 100644
File size: 2.1 KB
Line 
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
20/** \file
21
22   Pitch detection using a fast harmonic comb filter
23
24   This pitch extraction method implements a fast harmonic comb filter to
25   determine the fundamental frequency of a harmonic sound.
26
27   This file was derived from the tuneit project, written by Mario Lang to
28   detect the fundamental frequency of a sound.
29   
30   see http://delysid.org/tuneit.html
31
32*/
33
34#ifndef _PITCHFCOMB_H
35#define _PITCHFCOMB_H
36
37#ifdef __cplusplus
38extern "C" {
39#endif
40
41/** pitch detection object */
42typedef struct _aubio_pitchfcomb_t aubio_pitchfcomb_t;
43
44/** execute pitch detection on an input buffer
45 
46  \param p pitch detection object as returned by new_aubio_pitchfcomb
47  \param input input signal window (length as specified at creation time)
48  \param output pitch candidates in bins
49 
50*/
51void aubio_pitchfcomb_do (aubio_pitchfcomb_t *p, fvec_t * input, fvec_t * output);
52/** creation of the pitch detection object
53 
54  \param bufsize size of the input buffer to analyse
55  \param hopsize step size between two consecutive analysis instant
56  \param channels number of channels to detect pitch on
57 
58*/
59aubio_pitchfcomb_t * new_aubio_pitchfcomb (uint_t bufsize, uint_t hopsize, uint_t channels);
60/** deletion of the pitch detection object
61 
62  \param p pitch detection object as returned by new_aubio_pitchfcomb
63 
64*/
65void del_aubio_pitchfcomb (aubio_pitchfcomb_t *p);
66
67
68#ifdef __cplusplus
69}
70#endif
71
72#endif /* _PITCHFCOMB_H */
73
74
Note: See TracBrowser for help on using the repository browser.