|
aubio 0.4.9
|
Phase vocoder object. More...
Go to the source code of this file.
Typedefs | |
| typedef struct _aubio_pvoc_t | aubio_pvoc_t |
| phasevocoder object | |
Functions | |
| aubio_pvoc_t * | new_aubio_pvoc (uint_t win_s, uint_t hop_s) |
| create phase vocoder object | |
| void | del_aubio_pvoc (aubio_pvoc_t *pv) |
| delete phase vocoder object | |
| void | aubio_pvoc_do (aubio_pvoc_t *pv, const fvec_t *in, cvec_t *fftgrain) |
| compute spectral frame | |
| void | aubio_pvoc_rdo (aubio_pvoc_t *pv, cvec_t *fftgrain, fvec_t *out) |
| compute signal from spectral frame | |
| uint_t | aubio_pvoc_get_win (aubio_pvoc_t *pv) |
| get window size | |
| uint_t | aubio_pvoc_get_hop (aubio_pvoc_t *pv) |
| get hop size | |
| uint_t | aubio_pvoc_set_window (aubio_pvoc_t *pv, const char_t *window_type) |
| set window type | |
Phase vocoder object.
This object implements a phase vocoder. The spectral frames are computed using a HanningZ window and a swapped version of the signal to simplify the phase relationships across frames. The window sizes and overlap are specified at creation time.
Definition in file phasevoc.h.
| typedef struct _aubio_pvoc_t aubio_pvoc_t |
phasevocoder object
Definition at line 42 of file phasevoc.h.
| void aubio_pvoc_do | ( | aubio_pvoc_t * | pv, |
| const fvec_t * | in, | ||
| cvec_t * | fftgrain ) |
compute spectral frame
This function accepts an input vector of size [hop_s]. The analysis buffer is rotated and filled with the new data. After windowing of this signal window, the Fourier transform is computed and returned in fftgrain as two vectors, magnitude and phase.
| pv | phase vocoder object as returned by new_aubio_pvoc |
| in | new input signal (hop_s long) |
| fftgrain | output spectral frame |
References aubio_pvoc_do().
Referenced by aubio_pvoc_do().
| uint_t aubio_pvoc_get_hop | ( | aubio_pvoc_t * | pv | ) |
get hop size
| pv | phase vocoder to get the hop size from |
References aubio_pvoc_get_hop().
Referenced by aubio_pvoc_get_hop().
| uint_t aubio_pvoc_get_win | ( | aubio_pvoc_t * | pv | ) |
get window size
| pv | phase vocoder to get the window size from |
References aubio_pvoc_get_win().
Referenced by aubio_pvoc_get_win().
| void aubio_pvoc_rdo | ( | aubio_pvoc_t * | pv, |
| cvec_t * | fftgrain, | ||
| fvec_t * | out ) |
compute signal from spectral frame
This function takes an input spectral frame fftgrain of size [buf_s] and computes its inverse Fourier transform. Overlap-add synthesis is then computed using the previously synthetised frames, and the output stored in out.
| pv | phase vocoder object as returned by new_aubio_pvoc |
| fftgrain | input spectral frame |
| out | output signal (hop_s long) |
References aubio_pvoc_rdo().
Referenced by aubio_pvoc_rdo().
| uint_t aubio_pvoc_set_window | ( | aubio_pvoc_t * | pv, |
| const char_t * | window_type ) |
set window type
| pv | phase vocoder to set the window type |
| window_type | a string representing a window |
References aubio_pvoc_set_window().
Referenced by aubio_pvoc_set_window().
| void del_aubio_pvoc | ( | aubio_pvoc_t * | pv | ) |
delete phase vocoder object
| pv | phase vocoder object as returned by new_aubio_pvoc |
References del_aubio_pvoc().
Referenced by del_aubio_pvoc().
| aubio_pvoc_t * new_aubio_pvoc | ( | uint_t | win_s, |
| uint_t | hop_s ) |
create phase vocoder object
| win_s | size of analysis buffer (and length the FFT transform) |
| hop_s | step size between two consecutive analysis |
References new_aubio_pvoc().
Referenced by new_aubio_pvoc().