void aubio_pitch_do_fcomb (aubio_pitch_t * p, const fvec_t * ibuf, fvec_t * out) { aubio_pitch_slideblock (p, ibuf); aubio_pitchfcomb_do (p->p_object, p->buf, out); out->data[0] = aubio_bintofreq (out->data[0], p->samplerate, p->bufsize); }
/* do method for each algorithm */ void aubio_pitch_do_mcomb (aubio_pitch_t * p, const fvec_t * ibuf, fvec_t * obuf) { aubio_filter_do_outplace (p->filter, ibuf, p->filtered); aubio_pvoc_do (p->pv, ibuf, p->fftgrain); aubio_pitchmcomb_do (p->p_object, p->fftgrain, obuf); obuf->data[0] = aubio_bintofreq (obuf->data[0], p->samplerate, p->bufsize); }
static PyObject * Py_bintofreq (PyObject * self, PyObject * args) { smpl_t input, samplerate, fftsize; smpl_t output; if (!PyArg_ParseTuple (args, "|" AUBIO_NPY_SMPL_CHR AUBIO_NPY_SMPL_CHR AUBIO_NPY_SMPL_CHR, &input, &samplerate, &fftsize)) { return NULL; } output = aubio_bintofreq (input, samplerate, fftsize); return (PyObject *)PyFloat_FromDouble (output); }
smpl_t aubio_bintomidi (smpl_t bin, smpl_t samplerate, smpl_t fftsize) { smpl_t midi = aubio_bintofreq (bin, samplerate, fftsize); return aubio_freqtomidi (midi); }